Виджет SnackBar
Виджет SnackBar передают в
showSnackBar.
Текст кладут в content,
длительность - в duration,
поведение на экране - в behavior из
SnackBarBehavior,
кнопку действия - в action.
Синтаксис
SnackBar(
content: Text('abcde'),
duration: Duration(seconds: 2),
)
Параметры
| Параметр | Описание |
|---|---|
content |
Основной текст сообщения. |
duration |
Сколько SnackBar виден на экране.
|
behavior |
Fixed или floating положение. |
action |
Кнопка справа, SnackBarAction.
|
Пример
Давайте покажем SnackBar по кнопке:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context) {
return ElevatedButton(
onPressed: () {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('abcde')),
);
},
child: Text('12345'),
);
},
),
),
),
),
);
}
Внизу появится полоска с текстом 'abcde'.
Пример
Давайте добавим action:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context) {
return ElevatedButton(
onPressed: () {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text('12345'),
action: SnackBarAction(
label: 'abcde',
onPressed: () {},
),
),
);
},
child: Text('abcde'),
);
},
),
),
),
),
);
}
Справа на полоске будет текстовая кнопка 'abcde'.
Смотрите также
-
класс
ScaffoldMessenger,
через который вызываютshowSnackBar -
виджет
SnackBarAction,
который добавляет кнопку вSnackBar -
перечисление
SnackBarBehavior,
которое задаёт fixed или floating -
виджет
MaterialBanner,
который показывают подAppBar