Live Tile要求
实现过程
- 使用Notifications Visualizer设计磁贴样式(xml),并采用Adaptive Tile:对于small,不显示任何信息;对于medium,只显示标题和文字;对于wide,显示图片、标题和文字,且图片位于左侧区域,标题和文字位于右侧区域;
- 在项目中新建一个xml文件,将Notification Visualizer 的xml拷入;
- 编写update()函数,引用刚刚定义的xml文件,通过对DOM元素操作的方法,取到所有text的标签,将更新条目的title和description作为文本结点插入DOM树中,使得当调用该函数时,磁贴样式能体现在开始菜单中;
- 为了使item增加时磁贴能同步更新,我在create按钮的事件处理函数中调用了update()函数;
- 实现更新的内容循环: 调用通知队列即可。
实现代码(已拆分,完整代码移步github)
(1)获取XML文件并得到所有text标签的集合
XmlDocument document = new XmlDocument(); document.LoadXml(System.IO.File.ReadAllText("Tile.xml"));
XmlNodeList textElements = document.GetElementsByTagName("text");
(2)实现更新同步的核心操作
TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);
TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true);
添加一个item
磁贴(小)
磁贴(中)
磁贴(宽)
以上内容皆为本人观点,欢迎大家提出批评和指导,我们一起探讨!