標籤:des style blog class code c
原文:Windows 8.1 應用再出發 - 磁貼的更新
本篇和大家一起瞭解一下Windows 8.1 中磁貼的更新,我們來看看如何利用它做出更好的應用程式磚。
首先我們從展現形式上來對比一下Windows 8 與 Windows 8.1 中的磁貼:
Windows 8支援兩種尺寸的磁貼,正正方形磚(150 * 150 像素)和長正方形磚(310 * 150 像素)。如中郵件和行事曆屬於長正方形磚,地圖和市集等屬於正正方形磚。
Windows 8.1在8.0 的磁貼種類基礎上,多支援了兩種尺寸的磁貼,小磁貼(70 * 70 像素)和 大磁貼(310 * 310 像素)。
這樣一來Windows 8.1 一共支援四種尺寸的磁貼,分別為小磁貼、中磁貼(原正正方形磚)、寬磁貼(原長正方形磚)和大磁貼。
如中IE和地圖等屬於小磁貼,閱讀清單屬於中磁貼,資訊屬於寬磁貼,天氣屬於大磁貼。需要注意的是,小磁貼是不支援動態磚的。
看完了展現形式,我們來看看怎樣在應用中設定這四種磁貼呢?這裡我們用到的就是程式資訊清單檔(Package.appxmanifest)。
這裡我們看到的是程式資訊清單檔的可視化介面,可以直接的看到,應用允許我們提供四種尺寸的磁貼。
應用預設磚大小有兩種選擇:310 * 150 寬磁貼 或者 150 * 150 中磁貼。(Windows 8.1 中,應用安裝後,磁貼不會出現在“開始”螢幕,預設磚大小的設定會在使用者固定應用時生效)
我們可以指定哪幾種磁貼顯示應用程式名稱,但是小磁貼是無法顯示名稱的(另外小磁貼不支援動態磚,如我們前面所講)。
四種磁貼中,70 * 70 小磁貼 和 150 * 150 中磁貼是所有應用都支援的。310 * 150 寬磁貼 和 310 * 310 大磁貼是可選擇的。
但有兩點需要注意:1. 如不支援寬磁貼,則預設大小不可選擇為寬磁貼。2. 如想支援大磁貼,則必須支援寬磁貼。
我們分別按照每種磁貼的尺寸要求設定磁貼,然後來看看程式資訊清單檔的變化:
<?xml version="1.0" encoding="utf-8"?><Package xmlns="http://schemas.microsoft.com/appx/2010/manifest" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest"> ... <Applications> <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="Win8._1UpdateControls.App"> <m2:VisualElements DisplayName="磁貼的更新" Description="Win8.1UpdateControls" ForegroundText="light" BackgroundColor="#464646" Square150x150Logo="Assets\Logo.png" Square30x30Logo="Assets\Square30x30Logo.png"> <m2:DefaultTile Square70x70Logo="Assets\Square70x70Logo.png" DefaultSize="wide310x150Logo" Square310x310Logo="Assets\Square310x310Logo.png" Wide310x150Logo="Assets\Wide310x150Logo.png"> <m2:ShowNameOnTiles> <m2:ShowOn Tile="square150x150Logo" /> <m2:ShowOn Tile="wide310x150Logo" /> <m2:ShowOn Tile="square310x310Logo" /> </m2:ShowNameOnTiles> </m2:DefaultTile> <m2:SplashScreen Image="Assets\SplashScreen.png" /> </m2:VisualElements> </Application> </Applications> <Capabilities> <Capability Name="internetClient" /> </Capabilities></Package>
如上面代碼所示:
1. 小、中、寬、大磁貼對應的名稱分別是:Square70x70Logo、Square150x150Logo、Wide310x150Logo 和 Square310x310Logo。
2. 預設磚大小為:DefaultSize="wide310x150Logo" 代表預設為寬磁貼,如果預設是中磁貼,那代碼會變為:DefaultSize="square150x150Logo"。
3. 顯示名稱的磁貼種類在<m2:ShowNameOnTiles>...</m2:ShowNameOnTiles>節點中定義。
這樣我們就把Windows 8.1 中磁貼的更新介紹完了,接下來的幾篇我們還會對Windows 8.1 帶來的其他更新做出介紹,謝謝。