Windows Phone 7 開發 31 日談——第5日:系統主題

By Jeff Blankenburg

本文是Windows Phone 7 開發 31 日談” 系列的第5日。

昨天,我講解了設備方向,以及在用戶改變他們的設備方向時如何適應這些改變。今天,我們來看看在他們更改了電話的主題和顏色後我們該做些什麼。

 

深色與淺色主題

如果你還沒看到,可以將你電話的主題由深改爲淺,並設置一個強調色。來看一下相同的應用程序使用了兩個不同主題:

clip_image001 clip_image002

 

強調色

你的用戶可以設置一個系統級的強調色。操作系統提供了10種大方明快的顏色供選擇。這些顏色不僅會在電話的起始屏幕中得到充分利用,還可以供你的應用程序來使用。來看一下這些顏色:

clip_image004

 

考慮默認值

當創建應用程序時,經常會去改變某些東西的顏色。我很支持這種做法。這隨你。不過你改的越多,你就越想將所有內容 都改掉。我不建議你在白色背景下使用深色文字(或者相反)。我是說如果你想有意讓某些東西變爲白色,你要仔細考慮如果電話的主題變爲白色時它將會變爲什麼樣子(可能會看不到哦)。幸好,有一種簡單的方法可以處理它,叫做Expression Blend 4。

 

Expression Blend 4 中的設備標籤

首先,在Expression Blend中打開項目。最簡單的方法是在Visual Studio中右擊此項目,選擇“Open In Expression Blend…”

clip_image005

打開後,在Blend的UI中有一個標籤叫“Device”,看起來像這樣:

clip_image006

這個標籤允許你預覽右側設計層中不同的主題和強調色。這我們開始在程序中使用這些顏色時非常重要。例如,我想在我的程序中使用一個帶顏色的背景,顏色讓用戶指定。爲了做到這一點,我用了Expression Blend 4的另一個出色的特性:顏色資源標籤。

顏色資源

在你對這批文章寫“爲什麼我非得用Expression Blend的呢?我是開發人員!”這樣的評論之前讓我告訴你:所有的這一切都可以用Visual Studio 2010完成。 但那非常非常困難。在採用複雜方法並不會帶來更多裨益時我更傾向於用簡單方法實現。

在你沒有覆蓋它們時Windows Phone 7會使用一套默認顏色集,在很多情況下,認識這些顏色對你很有益。在下面的圖片中,可以看到PhoneAccentColor和PhoneBackgroundColor根據我在設備標籤中選擇的主題和強調色進行改變。第一個是深/藍,第二個是淺/橙。

clip_image007

clip_image008

在程序中選擇這些顏色後,它允許我們綁定到特定的系統值,當用戶改變主意時,程序可以迅速的反映出改變。在下面的代碼中,你會看到我在程序中添加了一個使用了漸進色的矩形,從PhoneBackgroundColor過渡到PhoneAccentColor。我還設置了應用程序的標題,同樣利用了電話的強調色。

這是上面兩個程序的界面(這兩個截圖除了主題和顏色之外沒有任何區別):

clip_image009 clip_image010

示例代碼下載

下載這個示例,用Expression Blend打開它。用顏色資源調整。通過設備標籤預覽變化。這一定會使你的生活更輕鬆。

clip_image011

原文地址: http://www.jeffblankenburg.com/post/31-Days-of-Silverlight-7c-Day-5-System-Theming.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章