1. 程式人生 > >關於android資原始檔那些事。

關於android資原始檔那些事。

很多時候,我們拿到一個開發到一半的專案來接手做的時候,很多時候 都感覺一團亂麻,有的是沒註釋,有的是程式碼可讀性差,各種引數,數值隨意放,這時候我們就需要把他們放到他們該去的地方,減少專案的維護難度,為後來接鍋的人留條活路。

在android中的資源指的是非程式碼部分的,指外部檔案。在百度雲盤裡面指的資源,是去往秋名山的貨物。

assets中儲存的一般是原生的檔案,例如MP3檔案,Android程式

不能直接訪問,必須通過AssetManager類以二進位制流的形式來讀取。

R類是自動生成的,在該類中根據不同的資源型別生成了相應的內部類,該類包含了系統中使用到的所有資原始檔的標識。

res中的資源可以通過R資源類直接訪問。

1.在程式碼中使用資原始檔

  在程式碼中訪問資原始檔,是通過R類中定義的資原始檔型別和資原始檔名稱來訪問的。

  具體格式為:

  R.資原始檔型別.資原始檔名稱

  另外,除了訪問使用者自定義的資原始檔,還可以訪問系統中的資原始檔。

  訪問系統中的資原始檔的格式為

  android.R. 資原始檔型別.資原始檔名稱

2.在其他資原始檔中引用資原始檔

  經常會在佈局檔案中引用圖片、顏色資源、字串資源和尺寸資源。

  在其他資源中引用資源的一般格式是:

  @[包名稱:]資源型別/資源名稱

使用顏色資源

  顏色值定義的開始時一個#號,後面是Alpha-RGB的格式。

  例如:

  #RGB

  #ARGB

  #RRGGBB

  #AARRGGBB

  引用資源格式:

  Java程式碼中:R.color.color_name

  XML檔案中:@[package:]color/color_name

  使用時在res\values\目錄下,定義一個colors.xml檔案,裡面存放顏色名字和顏色值的鍵值對。

  如:

<resources>
    <color name="red_bigbang">#ff0000</color>
    <color name="blue_bangbang">#0000ff</color>
</resources>

使用其他也是換湯不換藥

使用字串資源

  建立字串資原始檔strings.xml.裡面內容也是鍵值對

  在Java程式碼中引用字串資源R.string.string_name

  可如下取得:

  String str = getString(R.string.string_name).toString();

  在xml檔案中引用字串資源:@[package:]string/string_name

使用尺寸資源

  尺寸資源被定義在res\values\dimens.xml檔案中。

 在Java程式碼中: R.dimen.dimen_name

  在xml檔案中:@[package:]dimen/dimen_name

使用原始XML資源

  XML檔案定義在工程的res\xml\目錄下,通過Resources.getXML()方法來訪問。

  獲得原始XML檔案的思路是,通過getResources().getXml()獲得XML原始檔案,得到XmlResourceParser物件,通過該物件來判斷是文件的開始還是結尾、是某個標籤的開始還是結尾,並通過一些獲得屬性的方法來遍歷XML檔案,從而訪問XML檔案的內容。

使用drawables資源

  drawable資源是一些圖片或者顏色資源,主要用來繪製螢幕,通過Resources.getDrawable()方法獲得。

  drawable資源分為三類:Bitmap File(點陣圖檔案)、Color Drawable(顏色)、Nine-Patch Image(九片圖片)。

  Android中支援的點陣圖檔案有png、jpg和gif

  引用點陣圖資源的格式:

  Java程式碼中:R.drawable.file_name

  XML檔案中:@[package:]drawable/file_name

使用佈局(layout)資源

  佈局資源是Android中最常用的一種資源,將螢幕中元件的佈局方式定義在一個XML檔案中,類似於Web中的HTML頁面。

  佈局檔案位於res\layout\中,名稱任意。Android通過LayoutInflater類將XML檔案中的元件解析為視覺化的檢視元件。

  在Activity中,呼叫Activity.setContentView()方法,將佈局檔案設定為Activity的介面,使用findViewById()方法來得到佈局中的元件。

  引用佈局檔案:

  Java程式碼中:R.layout.my_layout

  XML檔案中:@[package:]layout/my_layout

使用選單資源

  任何檢視元件的建立方式都有兩種:一種通過在佈局檔案中宣告建立;另一種通過在程式碼中建立。

  Android中的選單分為選項選單、上下文選單和子選單,都可以在XML檔案中宣告定義,在程式碼中通過MenuInflater類使用。

  選單資原始檔也是XML檔案,放在工程res\menu\目錄下。通過R.menu.my_menu的方式來引用。

  典型選單資原始檔的結構:<menu>根元素,在根元素裡會巢狀<item>和<group>子元素,<item>元素中也可巢狀<menu>形成子選單

 大概的用法大家多使用幾次就好了。

相關推薦

關於android原始檔那些

很多時候,我們拿到一個開發到一半的專案來接手做的時候,很多時候 都感覺一團亂麻,有的是沒註釋,有的是程式碼可讀性差,各種引數,數值隨意放,這時候我們就需要把他們放到他們該去的地方,減少專案的維護難度,為後來接鍋的人留條活路。 在android中的資源指的是非程式碼部分的,指

程式設計師的那些

這裡是程式設計師的天梯排行,請對號入座! 0. 電腦科學之父:圖靈、夏農、馮諾依曼等人。 1. 電腦科學各領域之父:AT&T 貝爾實驗室裡那幾個開創了計算機世界的研究員,Thompson、裡奇、伯納斯李、Bjarne Stroustrup 等人。 2. 矽谷之父:仙童公司八叛逆天才 ( 羅伯

Android 原始檔螢幕適配

一、圖片適配: mipmap-xhdpi:720P,表示1280x720解析度,用於存放2x切圖 mipmap-xxhdpi:1080P,表示1920x1080解析度,用於存放3x切圖 mipmap-xxxhdpi:2K,表示2560x1440解析度,用於存放4x切圖  

B2B行業的支付的那些

各位坑友大家好,這是坑君連環坑系列的第一篇文章,在正題之前坑君想先談一談這一系列文章的動機與目的。 與各位讀者一樣,坑君目前也正在2B行業創業之中。前幾日坑君參加了託比網在寧波舉辦的B2B電子商務大會,有幸結識了一大批志同道合的朋友但也遇到了一些問題。 在會議第二日的午間,坑君遇到了幫模網的肖女士和另外一家無

Android原始檔strings實現特殊字元轉義

<div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm="post"

Android 原始檔規範(layout、id等)

經過學習總結的幾個命名法 1.下劃線命名法:如 activity_main,     主要用在res下面檔名和其中的string,color的name 和layout的id。          (量最多,也解釋了為何用下劃線) 2.小駝峰命名法:如 getXX(), 

程式設計師薪水的那些

程式設計師薪水是有高有低的,這事沒什麼特別,因為任何行業的薪水都是有高有低的。 但程式設計師的薪水浮動能從2千到五萬,這事就很有趣了。 在三線城市,兩萬以上的程式設計師是鳳毛菱角的,就算是架構師也只有極少數的人能超過兩萬。 所以,可以直接將那些兩萬以上的程式設計師,歸類為一二線城市。 換言之,如果你所

Android textview 花裡胡哨 那些

1.文字畫出來 https://github.com/totond/TextPathView 2.跑馬燈 https://github.com/Marksss/AndroidAutoSwitcher https://github.com/dreamlivemeng/UpMarquee

Android原始檔string.xml中\u2026的意思

 今天看了一個string.xml檔案,對其中的一行程式碼中包含的\u2026不是很理解,後來查閱資料後發現了其中的意思。 程式碼如下: <resourcesxmlns:xliff="

Android原始檔中各種XML的作用與解釋

眾所周知,XML是一種可擴充套件標記語言,它被用來傳輸和儲存資料。在Android中也會隨處可見XML檔案,包括一個android專案不可缺少的AndroidManifest.xml清單檔案,res資

android原始檔overlay

aapt aapt stands for Android Asset Packaging Tool. This tool is part of the SDK (and build system) and allows you to view,

有關於搭建私有云的那些z270-ubuntu14

一百塊錢入了一個Z270,改造了一下。首先安裝了ubuntu 14的server版本。出現了無法安裝的現象。這個時候進入shell,掛載U盤的sdv1分割槽,然後把iso檔案掛載為cdrom即可。進入後安裝lamp環境,但是由於環境為php5.59,需要升級為5.6,先解除安

android 開發錄音那些(錄音許可權授權及判斷錄音許可權是否拒絕處理)

在專案開發錄音功能是,OnTouchListener呼叫時使用錄音功能,接下來就總結下開發過程中遇到的問題及解決辦法: (1)第一次點選時會跳出選擇是否授權錄音許可權的對話款,操作後會發現程式崩掉,怎麼來監測彈出授權對話方塊呢?這是一個十分困擾的問題對吧,經過本人就Moti

Android開發規範之------Android 原始檔命名與使用

以下主要引用阿里巴巴 Android 開發手冊: Android 資原始檔命名與使用: 【推薦】資原始檔需帶模組字首。 【推薦】layout 檔案的命名方式。 Activity 的 layout 以 module_activity 開頭 Fragment 的 la

搞懂 Android Studio 構建那些

1.Android 構建系統構建 APK 的過程是個相當複雜的過程,Android 構建系統需要將應用的資原始檔和原始檔一同打包到最終的 APK 檔案中。應用可能會依賴一些外部庫,構建工具要靈活地管理這些依賴的下載、編譯、打包(包括合併、解決衝突、資源優化)等過程。應用的原始

Android原始檔命名規範學習手冊

【推薦】 資原始檔需帶模組字首。【推薦】 layout 檔案的命名方式。 Activity 的 layout 以 module_activity 開頭 Fragment 的 layout 以 module_fragment 開頭 Dialog 的 layout 以 module_dialog 開頭

關於Android原始檔中出現百分號的問題

編輯strings.xml的時候,提示 %編譯不通過。 <string name="url">http://aa.cc.com/dd?g=%rasdf</string> 或者 <string name="message_conten

無法引用android原始檔夾中raw資料夾中的檔案

參考:http://www.thinksaas.cn/group/topic/212348/ 環境:eclipse  最近要寫一個讀取txt的文字,在res目錄下新建了一個raw資料夾,並向其中加入了txt檔案,但通過R引用時無法引用。在網上查了一下原因是R和Android

Android 原始檔命名規範

前言 在我們開發Android的時候,肯定會用到資原始檔,color,dimen,string等等,當我們專案小的時候,我們使用資原始檔並沒有關注使用的規範.導致專案大了以後或者ui經過幾次的改版之後,資原始檔中的資源名稱命名很是混亂.下面我就看看其他的

drawable與mipmap的區別(android原始檔放置位置)

今天在網上瀏覽部落格,看到這一個問題,我們的圖片資源到底放在drawable還是mipmap目錄中,網上的爭議很大, 今天打算就我的觀點說一下這個問題,如果我的回答讓大神們有所質疑,希望多多提點。 首先我們應該知道他們的意義: 1.Drawable Android