這個平板電腦規格如下:
畫面解析度 1024x600,第一個有超過上千畫素的解析度大多數人都會抓住他的兩旁,橫著使用。
我們建議開發者花時間仔細研讀 supporting multiple screens 一文,我們也將會在持續改善該文章內容。Dan Morrill 的One Screen Turn Deserves Another 博客文章,也可以適用於直立式使用的情況。
像素密度的意義
當要開發應用程式的外觀時,主要是設計版面跟使用的圖資,而這兩項外觀重要原素就牽扯到螢幕的像素密度、尺吋大小、橫放或直立使用三因素。如果想要設及時髦又漂亮的外觀設計,則必須要完全理解這三個元素。
在三星的這個例子中有另一個意外的地方是他採用遠超過 Android 設定的 170 DPI,當然這是為了在該平板電腦上有更好畫面的設定。在大螢幕上如果設計不良很容易讓螢幕空曠區太大,中等解析度時按鍵與圖標之間距離太遠,但在高解析度時 Android 框架的擴展方式讓該產品畫面更漂亮。
身為業餘攝影師我想到拍照時的光圈、ISO、快門設定問題。當你想拍攝一位舞者,就必須加大光圈、ISO 調得更敏銳、快門加速等技巧。同樣的三星的 Galaxy Tab 使用較大螢幕就必須用更高解析度。
好消息是 Android 框架的程式碼判斷足夠判斷出該產品的最佳畫面,LifeSaver2 的應用程式畫面表現很棒,上面是在 Nexus One 下圖則是Galaxy Tab:
在三星的這個例子中有另一個意外的地方是他採用遠超過 Android 設定的 170 DPI,當然這是為了在該平板電腦上有更好畫面的設定。在大螢幕上如果設計不良很容易讓螢幕空曠區太大,中等解析度時按鍵與圖標之間距離太遠,但在高解析度時 Android 框架的擴展方式讓該產品畫面更漂亮。
身為業餘攝影師我想到拍照時的光圈、ISO、快門設定問題。當你想拍攝一位舞者,就必須加大光圈、ISO 調得更敏銳、快門加速等技巧。同樣的三星的 Galaxy Tab 使用較大螢幕就必須用更高解析度。
好消息是 Android 框架的程式碼判斷足夠判斷出該產品的最佳畫面,LifeSaver2 的應用程式畫面表現很棒,上面是在 Nexus One 下圖則是Galaxy Tab:
只要你確保提供三種不同解析度圖資,Android 框架就可以找到適合的擴展方式。
可能出錯的地方(你無法預期應用程式跑在哪一種螢幕上)
採用絕對值的 layout
採用絕對值畫素而非無關像素密度的設定
自行計算螢幕大小、自行載入圖資、而非經由框架載入
參考 supports-screens 我們建議你採用以下設定:
<supports-screens android:largeScreens="true" android:anyDensity="true" />
在 API 版本 4 以前的預設值都是 false,如此設定後在大多情況下都可以得到理想的畫面輸出。
測試
如果要確保畫面輸出,最好還是用模擬器輸出測試過,三星也有提供相關的外掛(add-on)讓你更容易測試。
幹嘛管這麼多?
主要是因為 Android 本來就只是設計給手機用的平台,為了因應現在的應用變化,才加入後續的調整與應用。但也拓展了你的應用程式可以應用在各種產品上的可能性。
原文網址:
Screen Geometry Fun
可能出錯的地方(你無法預期應用程式跑在哪一種螢幕上)
採用絕對值的 layout
採用絕對值畫素而非無關像素密度的設定
自行計算螢幕大小、自行載入圖資、而非經由框架載入
參考 supports-screens 我們建議你採用以下設定:
<supports-screens android:largeScreens="true" android:anyDensity="true" />
在 API 版本 4 以前的預設值都是 false,如此設定後在大多情況下都可以得到理想的畫面輸出。
測試
如果要確保畫面輸出,最好還是用模擬器輸出測試過,三星也有提供相關的外掛(add-on)讓你更容易測試。
幹嘛管這麼多?
主要是因為 Android 本來就只是設計給手機用的平台,為了因應現在的應用變化,才加入後續的調整與應用。但也拓展了你的應用程式可以應用在各種產品上的可能性。
原文網址:
Screen Geometry Fun
沒有留言:
張貼留言