时间:2022-12-01 10:56:28 | 栏目:.NET代码 | 点击:次
本文中, 将介绍如何在MAUI项目当中使用SnackBar以及Toast通知功能, 通过添加 CommunityToolkit.Maui 包,来扩展MAUI功能。
首先, 创建MAUI项目, 并且安装 CommunityToolkit.Maui:
<ItemGroup> <PackageReference Include="CommunityToolkit.Maui" Version="1.0.0-pre6" /> </ItemGroup>
紧接着,在Program中,注册CommunityToolkit.Maui包, 使用包提供的扩展方法: UseMauiCommunityToolkit
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
})
.UseMauiCommunityToolkit();
return builder.Build();
}
}
使用Toast的静态方法Make,传递通知的内容以及时间(ToastDuration), 枚举ToastDuration为Long/Short, 默认保持的时间分别为2/3.5秒 (IOS || MACCATALYST || WINDOWS)。
using using CommunityToolkit.Maui.Alerts;
//...
private void OnCounterClicked(object sender, EventArgs e)
{
Toast.Make("Hello~", CommunityToolkit.Maui.Core.ToastDuration.Short).Show();
}
针对Windows平台, Toast使用的是ToastNotification, 效果如下所示:

Android平台,则是使用原生的Android.Widget.Toast.MakeText, 效果如下所示:

与Toast类似, 同样是通过Make传递可选参数,并且调用Show进行显示。
private void OnCounterClicked(object sender, EventArgs e)
{
Snackbar.Make("Hello!").Show();
}

也可以调用元素的扩展方法进行显示到元素的地址位置。
MyButton.DisplaySnackbar("Hello!");
