編輯:Android開發實例
前言
本章內容為Android開發者指南的Framework Topics/Application Resources章節,版本為Android 3.2 r1,翻譯來自:"CodeGuy"。
Application Resources
譯者署名:CodeGuy
譯者鏈接:http://www.cnblogs.com/CodeGuy/
版本:Android 3.2 r1
原文
http://developer.android.com/guide/topics/resources/index.html
當你寫程序的時候應該習慣於把一些程序需要用到的資源,例如圖片和字符串,分開並獨立地保存在你的程序代碼之外,這樣你就可以獨立地維護這些資源文件。將資源文件獨立於代碼之外,這樣就允許你給程序提供更多可選的資源來支持一些特殊的設備配置,例如不同語言和不同屏幕大小。隨著越來越多的Android設備開始支持不同的配置,這變得越來越重要。為了讓這些Android設備兼容各種不同的配置,你必須得組織你的工程下面的res/ 目錄,根據類型和配置,通過不同的子目錄來對資源進行分組管理。
對於任意類型的資源,你都可以為你的程序指定默認的和多種可選的資源:
* 默認(缺省)的資源應該是那些可以在忽視設備的配置的情況下使用的或者當沒有其他可匹配當前配置的可替代資源的情況下使用的資源。
* 可替代資源是那些你為特定配置而設置的資源。一個特定的配置對應一組特定的資源,然後給該資源文件夾添加一個合適的配置限定詞作為命名。
(譯者注:一組特定的資源即你的工程目錄下的一個資源文件夾,res/layout這個布局文件夾)
例如,當你默認的UI布局保存在res/layout目錄下,你可能要設置另一個不同的UI布局保存在res/layout-land/這個目錄下,在你的屏幕是橫向的時候使用。Android通過把設備當前的配置信息匹配到你的資源文件目錄下的命名,自動調用恰當的資源。
圖1. 兩個設備使用的都是缺省(默認)的資源
圖2.兩種不同的設備配置,一個使用了可替代的資源
圖1給我們展示了在沒有可利用的可替代資源的情況下,一個應用程序的一組默認的資源是如何應用到不同的設備配置上的。圖2 給我們展示了相同的應用程序在具有一組可替代的資源,並且每種資源限定於一種設備配置的情況下,這兩種設備配置就會使用不同資源。
以上信息僅僅介紹了應用程序資源是如何應用在Android上的。下面的文檔就如何組織管理你的應用程序中的資源、如何指定可替代的資源、如何在你的程序中使用它們等等提供了完整的指南:
Providing Resources
這篇文檔會說明你可以在你的應用程序中使用什麼樣的資源文件,這些資源文件分別保存在哪裡,如何為特定的設備配置創建可替換的資源。
Accessing Resources
這篇文檔會說明如何使用你提供的資源,或者說如何通過你的程序代碼或者從其他XML類型的資源文件裡面引用資源文件。
Handling Runtime Changes
這篇文檔會說明Activity處於運行狀態時時如何管理配置當配置發生改變時。
Localization
這篇文檔會一個自下而上地指導你如何使用可替換的資源文件來初始化你的應用程序雖然這只是一個特定用途的替代資源,但是這對於吸引更多用戶是非常重要的。
Resource Types
這篇文檔介紹各種你可以引用的各種資源類型,描述資源的XML元素、屬性和語法。例如,這個引用將告訴你如何為應用程序的菜單,圖片或顏色,動畫等等創建一個資源
篇幅較長遂分成上下兩篇,上一篇我們已經快要一氣呵成了,但是美中不足的是,這個界面並不能討得美工MM的歡心,美工MM曾寄希望於您,卻交出這麼作出這麼一副死型樣,我都
如果想獲得建議,當在一個可編輯的文本字段中鍵入,可以通過AutoCompleteTextView做到這一點。當用戶輸入它會自動提供建議。建議列表顯示在下拉菜單,從中用戶可
可以顯示在的Android任務,通過加載進度條的進展。進度條有兩種形狀。加載欄和加載微調(spinner)。在本章中,我們將討論微調(spinner)。Spinner 用
程序員很多,遍地都是,高手也很多,但是懂設計的程序員並不多,我覺得我們不僅要成為一個coder還要成為一個designer。 我是一個比較注重ued的人,如果對一