Поделиться через


Элемент Snackbar

Это Snackbar оповещение по времени, которое по умолчанию отображается в нижней части экрана. Оно закрывается после настраиваемой длительности времени. Snackbar полностью настраивается и может быть привязан к любому IView.

Сообщает Snackbar пользователям о том, что приложение выполнило или выполнит его. Он отображается временно в нижней части экрана.

Инициализация конкретной платформы

Для доступа к Snackbar функциям требуется следующая настройка для конкретной платформы.

Никакой настройки для этого не требуется.

Синтаксис

Вызывается Snackbar с помощью C#.

C#

Чтобы отобразить Snackbar его, используйте статический метод Make:

using CommunityToolkit.Maui.Alerts;

CancellationTokenSource cancellationTokenSource = new CancellationTokenSource();

var snackbarOptions = new SnackbarOptions
{
    BackgroundColor = Colors.Red,
    TextColor = Colors.Green,
    ActionButtonTextColor = Colors.Yellow,
    CornerRadius = new CornerRadius(10),
    Font = Font.SystemFontOfSize(14),
    ActionButtonFont = Font.SystemFontOfSize(14),
    CharacterSpacing = 0.5
};

string text = "This is a Snackbar";
string actionButtonText = "Click Here to Dismiss";
Action action = async () => await DisplayAlert("Snackbar ActionButton Tapped", "The user has tapped the Snackbar ActionButton", "OK");
TimeSpan duration = TimeSpan.FromSeconds(3);

var snackbar = Snackbar.Make(text, action, actionButtonText, duration, snackbarOptions);

await snackbar.Show(cancellationTokenSource.Token);

При вызове Snackbar.Make()его параметр string text является обязательным. Все остальные параметры являются необязательными.

На следующем снимка экрана показана результирующая панель перекусок:

Существует также метод расширения, который привязыт Snackbar к любому VisualElement:

await MyVisualElement.DisplaySnackbar("Snackbar is awesome. It is anchored to MyVisualElement");

Предупреждение

Snackbar в Windows нельзя привязать VisualElement к ней и всегда отображается как уведомление Windows по умолчанию.

SnackBar содержит два события:

  • public static event EventHandler Shown
  • public static event EventHandler Dismissed

Он также содержит свойство public static bool IsShown { get; }.

Snackbar.Shown += (s, e) => { Console.WriteLine(Snackbar.IsShown); };
Snackbar.Dismissed += (s, e) => { Console.WriteLine(Snackbar.IsShown); };

Свойства

Свойство Type Описание
Текст string Текстовое сообщение. Обязательный
Действие Action Действие для вызова кнопки действия.
ActionButtonText string Текст кнопки действия.
Привязка IView Snackbar Якорь. Snackbar отображается рядом с этим представлением. Когда null, Snackbar появится в нижней части экрана.
Длительность TimeSpan Snackbar Длительность.
VisualOptions SnackbarOptions Snackbar визуальные параметры.

SnackbarOptions

Позволяет SnackbarOptions настроить стиль по умолчанию Snackbar .

Свойства

Свойство Type Описание Default value
CharacterSpacing double Интервалы символов сообщения. 0.0d
Шрифт Font Шрифт сообщения. Font.SystemFontOfSize(14)
TextColor Color Цвет текста сообщения. Colors.Black
ActionButtonFont Font Шрифт кнопки действия. Font.SystemFontOfSize(14)
ActionButtonTextColor Color Цвет текста кнопки действия. Colors.Black
BackgroundColor Color Цвет фона. Colors.LightGray
CornerRadius CornerRadius Радиус угла. new CornerRadius(4, 4, 4, 4)

Методы

Метод Description
Отображение Отображение запрошенного Snackbar. Это приведет к закрытию любого отображаемого в настоящее время Snackbar
Закрыть Закройте запрошенный Snackbarзапрос.

Примечание.

Одновременно можно отобразить только 1 Snackbar . При вызове Show метода во второй раз первый Snackbar будет автоматически отклонен до отображения второго Snackbar метода.

Примеры

Пример этой функции можно найти в действии в сообществе .NET MAUI набор средств пример приложения.

API

Исходный код Snackbar можно найти в репозитории сообщества .NET MAUI набор средств GitHub.