1. 程式人生 > 其它 >Android開發專案工程結構

Android開發專案工程結構

技術標籤:Android

在這裡插入圖片描述

  • java:寫Java程式碼的地方,業務邏輯實現的地方
  • res:存放我們各種資原始檔的地方,有圖片,字串,動畫,音訊等,還有各種形式的XML檔案

圖片資源:

  • drawable:存放各種點陣圖檔案,(.png,.jpg,.9png,.gif等)除此之外可能是一些其他的drawable型別的XML檔案
  • mipmap-hdpi:高解析度,一般我們把圖片丟這裡
  • mipmap-mdpi:中等解析度,很少,除非相容的的手機很舊
  • mipmap-xhdpi:超高解析度,手機螢幕材質越來越好,以後估計會慢慢往這裡過渡
  • mipmap-xxhdpi:超超高解析度,這個在高階機上有所體現

佈局資源:

  • layout:該目錄下存放的就是我們的佈局檔案,另外在一些特定的機型上,我們做螢幕適配,比如480*320這樣的手機,我們會另外建立一套佈局,就行:layout-480x320這樣的資料夾!

選單資源

  • menu:在以前有物理選單按鈕,即menu鍵的手機上,用的較多,現在用的並不多,選單項相關的資源xml可在這裡編寫。

values目錄:

  • demens.xml:定義尺寸資源
  • string.xml:定義字串資源
  • styles.xml:定義樣式資源
  • colors.xml:定義顏色資源
  • arrays.xml:定義陣列資源
  • attrs.xml:自定義控制元件時用的較多,自定義控制元件的屬性!
  • theme主題檔案,和styles很相似,但是會對整個應用中的Actvitiy或指定Activity起作用,一般是改變視窗外觀的!可在Java程式碼中通過setTheme使用,或者在Androidmanifest.xml中為<application…>新增theme的屬性!

PS:你可能看到過這樣的values目錄:values-w820dp,values-v11等,前者w代表平板裝置,820dp代表螢幕寬度;而v11這樣代表在API(11),即android 3.0後才會用到的!

raw目錄

用於存放各種原生資源(音訊,視訊,一些XML檔案等),我們可以通過openRawResource(int id)來獲得資源的二進位制流!其實和Assets差不多,不過這裡面的資源會在R檔案那裡生成一個資源id而已

動畫目錄

  • animator:存放屬性動畫的XML檔案
  • anim:存放補間動畫的XML檔案

如何使用這些資源?

所有的資原始檔都會在R.java檔案下生成一個資源id,我們可以通過這個資源id來完成資源的訪問,使用情況有兩種:Java程式碼中使用和XML程式碼中使用。

Java程式碼中使用:

Java 文字:

txtName.setText(getResources().getText(R.string.name)); 

圖片:

imgIcon.setBackgroundDrawableResource(R.drawable.icon); 

顏色:

txtName.setTextColor(getResouces().getColor(R.color.red)); 

佈局:

setContentView(R.layout.main);

控制元件:

txtName = (TextView)findViewById(R.id.txt_name);

XML程式碼中使用:

通過@xxx即可得到,比如這裡獲取文字和圖片:

<TextView android:text="@string/hello_world" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background = "@drawable/img_back"/>