從HelloWorld開始

      每種開發語言的初學者在學習這門語言的時候一定會有一個相同的初戀情人,那麼今天我們就來看看android開發者的初戀情人到底是怎麼“傾國傾城”的。

      首先我們來看一下HelloWorld這個初戀情人的身體構造(Android應用程序架構)。

src/java
      原代碼存放目錄
gen/ 自動生成目錄
gen 目錄中存放所有由Android開發工具自動生成的文件。目錄中最重要的就是R.java文件。這個文件由Android開發工具自動產生的。Android開發工具會自動根據你放入res目錄的資源,同步更新修改R.java文件。正因爲R.java文件是由開發工具自動生成的,所以我們應避免手工修改R.javaR.java在應用中起到了字典的作用,它包含了各種資源的id,通過R.java,應用可以很方便地找到對應資源。另外編繹器也會檢查R.java列表中的資源是否被使用到,沒有被使用到的資源不會編繹進軟件中,這樣可以減少應用在手機佔用的空間。
res/ 資源(Resource)目錄
在這個目錄中我們可以存放應用使用到的各種資源,如xml界面文件,圖片或數據。具體請看ppt下方備註欄。
libs/ 支持庫目錄
程序開發時需要的一些三方的jar包可以放在這個目錄,系統會自動把裏面的jar包,添加到環境變量。
assets資源目錄
Android除了提供/res目錄存放資源文件外,在/assets目錄也可以存放資源文件,而且/assets目錄下的資源文件不會在R.java自動生成ID,所以讀取/assets目錄下的文件必須指定文件的路徑,如:file:///android_asset/xxx.3gp
AndroidManifest.xml 項目清單文件
 這個文件列出了應用程序所提供的功能,以後你開發好的各種組件需要在該文件中進行配置,如果應用使用到了系統內置的應用(如電話服務、互聯網服務、短信服務、GPS服務等等),你還需在該文件中聲明使用權限。
project.properties 項目環境信息,一般是不需要修改此文件
      接下來我們重點看一下,在Android開發過程中,我們需要頻繁打交道的res目錄。
     
a)res/drawable 專門存放png、jpg等圖標文件。在代碼中使用getResources().getDrawable(resourceId)獲取該目錄下的資源。
b)res/layout 專門存放xml界面文件,xml界面文件和HTML文件一樣,主要用於顯示用戶操作界面。
c)res/values 專門存放應用使用到的各種類型數據。不同類型的數據存放在不同的文件中,如下:
1)strings.xml 定義字符串和數值,在Activity中使用getResources().getString(resourceId) 或getResources().getText(resourceId)取得資源。
   它的作用和struts中的國際化資源文件一樣。
    <?xml version="1.0" encoding="UTF-8"?>
    <resources>
      <string name="itcast">Helloworld</string>
    </resources>
2)arrays.xml 定義數組。
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="colors">
            <item>red</item>
            <item>yellow</item>     
            <item>green</item>     
            <item>blue</item>   
        </string-array>
    </resources>
3)colors.xml 定義顏色和顏色字串數值,你可以在Activity中使用getResources().getDrawable(resourceId) 以及getResources().getColor(resourceId)取得這些資源。例子如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <resources>
      <color name="contents_text">#ff0000</color>
    </resources>
4)dimens.xml 定義尺寸數據,在Activity中使用getResources().getDimension(resourceId) 取得這些資源
    <?xml version="1.0" encoding="UTF-8"?>
    <resources>
      <dimen name="key_height">50dip</dimen>
    </resources>
5)styles.xml 定義樣式。
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <style name="itcastText" parent="@style/Text">
            <item name="android:textSize">18sp</item>
            <item name="android:textColor">#0066FF</item>
        </style>
    </resources> 
d)res/anim/ 存放定義動畫的XML文件。
e)res/xml/ 在Activity中使用getResources().getXML()讀取該目錄下的XML資源文件。
 
f)res/raw/ 該目錄用於存放應用使用到的原始文件,如音效文件等。編譯軟件時,這些數據不會被編譯,它們被直接加入到程序安裝包裏。          
    爲了在程序中使用這些資源,你可以調用getResources().openRawResource(ID) , 參數ID形式:R.raw.somefilename。
 

 

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