android的資源

1、資源引用語法:

@[package:]type/name :其中package可以省略,默認是本地包即R.java package,type是資源類型,name是名稱;android應用主要有以下資源類型:

R.drawable--drawable

R.id--id

R.layout--layout

R.string--string

R.attr--attr

R.plural--plurals

R.array--string-array

你可以通過android.R.java來引用android的系統資源
在引用id資源時,你可以通過一個'+'來讓系統幫你定義一個id資源,如@+id/text;


2、資源類型

編譯成二進制類型和拷貝到設備類型
一般/res/values,/res/layout,/res/xml等目錄下的都會通過aapt編譯成二進制,而/res/raw目錄下的是拷貝到設備上;
/res/xml下的文件,可以通過android系統的xml readers讀取;
/res/raw下的文件雖然沒有編譯成二進制,但因爲是資源,android會在R.java中產生一個id,你可以通過這個id來訪問該資源,如R.raw.some-filename-minus-extension;
在/res目錄下有如下重要的子目錄:

anim:編譯好的動畫文件

drawable:位圖

layout:UI和視圖定義

values:數組,顏色,尺寸,字符串和樣式

xml:編譯好的xml文件

raw:沒有編譯的原始文件

資源類型
resource type location description
Colors /res/values/any-file 通過R.color.*來引用,xml 節點是/resources/color
Strings /res/values/any-file 通過R.string.*來引用,xml節點是/resources/string
String arrays /res/values/any-file 通過R.array.*來引用,xml節點是/resources/string-array
Pluras /res/values/any-file 通過R.plural.*來引用,xml節點是/resources/plurals
Dimensions /res/values/any-file 通過R.dimen.*來引用,xml節點是/resources/dimen
Images /res/drawable/multiple-files 通過R.drawable.*來引用
Color
drawables
/res/values/any-file
or
/res/drawable/multiple-files
矩形或圓角矩形顏色背景,通過R.drawable.*來引用;矩形的xml節點是/resources/drawable,圓角矩形的的根xml節點是<shape>
Arbitrary xml file /res/xml/*.xml android可以把任意的xml文件當作資源,這些文件通過aapt編譯器來編譯,通過R.xml.*來引用;通過xml reader api來訪問xml文件
Arbitrary raw
file
/res/raw/*.* 這些資源不會編譯但會產生唯一資源id,並且可以通過R.raw.*來引用;通過基於流的api來訪問
Arbitrary raw
assets
/asseats/*.*/*.* android允許任意的目錄和文件放在/assets目錄下,它們不是資源文件而是原始文件,不會產生資源id;你可以通過以/assets開始的路徑來訪問相關文件資源

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