UWP:Live Tile && Adaptive Tile && Updating

  • Live Tile要求

    • 要求使用標準的處理XML DOM方式創建動態磁貼
    • 要求採用Adaptive Tile(覆蓋至少small,medium,wide)
    • 實現效果:要求每添加一條項目,磁貼能進行Updating,並且更新的內容循環展示。
    • 嘗試使用通知可視化工具(Notifications Visualizer)
    • 美觀度
  • 實現過程

    • 使用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
王者榮耀project
王者榮耀project
磁貼小 磁貼(小)
磁貼中 磁貼(中)
磁貼寬 磁貼(寬)


以上內容皆爲本人觀點,歡迎大家提出批評和指導,我們一起探討!


發佈了146 篇原創文章 · 獲贊 268 · 訪問量 53萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章