65.9K
CodeProject 正在变化。 阅读更多。
Home

如何在 #UWP 应用中构建简单的 Toast 通知?(第一部分)

2016年1月21日

CPOL

3分钟阅读

viewsIcon

46610

如何在 #UWP 应用中构建简单的 Toast 通知?(第一部分)


博文参考: 构建简单的带文本的 Toast 通知(第一部分)


如果您是为 Windows 10 构建应用或游戏的开发者,并且目标平台是通用 Windows 平台(也称为 UWP),您可能希望向应用/游戏的用户显示 toast 通知。您可能还希望提供一些额外的内​​容,如文本框、按钮等,以获取特定的输入。

作为本教程系列的一部分,我们将学习如何显示自定义 toast 通知。今天,让我们开始构建一个简单的带文本的 toast 通知。敬请关注,了解后续博文中更复杂的通知。

#UWP Tips: Building a simple Toast Notification with text (www.kunal-chowdhury.com)

随着智能设备的普及,通知的使用也在日益增加,无论是生日提醒、Facebook 帖子或评论、Twitter 的转推、邮件或短信。简单来说,我们可以说人们已经习惯了接收关于他们喜欢的一切或在日常生活中很重要的事物的通知。

如果您正在构建应用/游戏,您一定希望让您的用户始终保持最新状态,并且/或者与您的应用程序保持互动。需要显示复杂的 toast 通知并从用户那里检索一些输入的​​情况非常罕见。在大多数情况下,我们只需要显示一两行简单的文本消息来让他们了解一些话题。

因此,让我们从最基础的开始,创建我们的第一个简单 toast 通知。在开始之前,您需要对要显示给用户的内容进行结构化。为此,您需要创建模板。一个非常基础的 toast 通知模板包含带有两行或一行文本字符串的可视化绑定。

在这里,您可以找到一个简单的 toast 通知模板(xmlToastTemplate),我们用它来为这篇博文创建演示,我希望它能够自明意。

// template to load for showing Toast Notification
var xmlToastTemplate = "<toast launch=\"app-defined-string\">" +
                         "<visual>" +
                           "<binding template =\"ToastGeneric\">" +
                             "<text>Sample Notification</text>" +
                             "<text>" +
                               "This is a sample toast notification from kunal-chowdhury.com" +
                             "</text>" +
                           "</binding>" +
                         "</visual>" +
                       "</toast>";

// load the template as XML document
var xmlDocument = new XmlDocument();
xmlDocument.LoadXml(xmlToastTemplate);

// create the toast notification and show to user
var toastNotification = new ToastNotification(xmlDocument);
var notification = ToastNotificationManager.CreateToastNotifier();
notification.Show(toastNotification);

一旦您对内容进行了结构化并创建了模板,您需要在您的 UWP 应用中将其加载为 XML 文档。使用 `Windows.Data.Xml.Dom.XmlDocument` 对象的 `LoadXml` 方法将 XML 模板加载到内存中,然后将其传递给 `ToastNotification` 对象。

然后调用 `Windows.UI.Notifications.ToastNotificationManager.CreateToastNotifier()` 方法来获取句柄,并在其上调用 `Show` 方法,传递 `toastNotification` 对象。调用此方法后,将向用户显示 toaster,如果用户未进行交互,它将驻留在 Windows 通知中心。

在这里,您可以看到我们的演示代码如何在 Windows 10 手机中创建 Toast 通知(*截图 #1*),以及如果用户未进行交互,它在通知中心中的外观(*截图 #2*)。如果内容较大,用户可以展开它以查看全部内容。但始终建议将内容保持在默认范围内,以免覆盖整个 UI。

Windows 10 Universal App - Toast Notification (www.kunal-chowdhury.com)    Windows 10 Universal App - Toast Notifications in Notification Center (www.kunal-chowdhury.com)

我希望这篇博文简单易懂,特别是对于初学者构建通用 Windows 应用。上面显示的演示适用于任何 UWP 应用,因为它共享相同的 SDK 和平台代码。

这确实是一个简单的示例,内容为一两行文本。在下一篇文章中,我们将深入一些,讨论构建一个带有按钮的更复杂的 toast 通知消息。在此期间,祝您编码愉快,并阅读我关于构建 通用 Windows 平台 应用的其他文章。

不要就此停止。如果您在 Twitter、Facebook、Google+ 上并且尚未与我联系,请立即这样做,并获取我将在这些社交网站上分享的所有更新/帖子。您还可以订阅我博客的 RSS 源和电子邮件通讯,以立即获得新帖子的通知。

© . All rights reserved.