Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android編程入門 >> 【入門篇】Android學習筆記——項目結構及相關基礎知識

【入門篇】Android學習筆記——項目結構及相關基礎知識

編輯:Android編程入門

Android項目具有其自身的結構規范,完好的遵循結構規范,可以讓開發事半功倍。下圖分別從Android視圖和Project視圖展示了Android項目的項目結構:

圖中左側是Android視圖,右側是Project視圖。從兩個結構圖的對比,可以發現Android視圖更加關注Android開發工作,而Project視圖更加關注整體結構,雖然兩個視圖有一些不同,但主體結構並沒有什麼區別。

接下來,主要通過Android視圖,描述一下Android項目中各個目錄的用途和含義,明白Android視圖中各目錄的用戶和含義後,找到Project視圖中的對應目錄就不是什麼難事兒了。

項目結構:

APP:Android項目代碼,通常的編碼工作都在這裡進行。

manifests:存放AndroidManifest.xml文件,此文件是Android項目中的配置清單文件。因為Android項目的模型是一個父類調用子類的模型,簡單來說,這個模型是由開發者繼承Android系統提供的父類來實現App自己的子類,然後Android系統在核實的時候去調用開發者實現的App。所以這個配置清單文件就十分重要,只有通過這個文件,Android系統才知道開發者的應用裡到底有些什麼內容,開發者要在此文件中申明應用包含的組件。

java:存放Android項目中的java代碼。

<包名>:存放java代碼。

<包名>(androidTest):存放Android 測試代碼。

<包名>(test):存放Unit測試代碼。

res:存放Android項目所需資源文件。

drawable:存放圖片資源文件,在Android系統中,Google推薦使用png格式的圖片資源,在此目錄下,不同屏幕密度的同名圖片資源將以文件夾格式顯示。

layout:存放布局資源文件,在此目錄下,不同屏幕尺寸的同名布局資源將以文件夾格式顯示。

menu:存放菜單資源文件,在此目錄下,不同屏幕尺寸的同名菜單資源將以文件夾格式顯示。

mipmap:存放圖片資源文件,約等同於drawable目錄,此目錄在Android 4.2版本被引入,Android對此目錄中的圖片資源提供了更好的縮放性能。

values:存放值資源,在此目錄下,同名同類型的資源將以文件夾格式顯示。

colors.xml:圖片資源文件

dimens.xml:距離資源文件

string.xml:字符串資源文件

style.xml:樣式資源文件

Gradle:Android項目構建文件,存放Gradle構建文件以及其他配置文件。

多終端設備支持

在Android系統中,存在著各式各樣的屏幕尺寸和各式各樣的系統版本。也就是人們所說的碎片化嚴重。針對這個問題,Google其實已經提供了非常完好的技術支持。比如:

多屏幕密度支持

在Android設備上,關於屏幕有兩個參數,一個是尺寸,如4.7寸,5.2寸,一個是分辨率,如768 x 1280, 480 x 800。尺寸表示屏幕的物理大小,分辨率表示屏幕的像素點數量,3.8寸屏幕具有768 x 1280的分辨率和7寸屏幕具有768 x 1280的分辨率,顯然顯示效果是不同的。這個不同就是因為屏幕密度引起的,簡單的可以把屏幕密度理解為單位面積上像素點的數量。

以圖片資源為例,Andorid提供了針對不同屏幕密度的圖片適配支持,只需要對目標資源文件夾進行不同的命名就可以簡單實現。下面列舉出了常用的圖片適配支持:

drawable:通用圖片資源目錄

drawable-nodpi:不需要縮放的圖片資源目錄

drawable-ldpi:低屏幕密度圖片資源

drawable-mdpi:中屏幕密度圖片資源

drawable-hdpi:高屏幕密度圖片資源

drawable-xhdpi:超高屏幕密度圖片資源,在這之上還有(drawable-xxhdpi,drawable-xxxhdpi)

多屏幕尺寸支持

除了對屏幕密度提供了完好支持,Android系統也對屏幕尺寸提供了完好吃吃,以布局文件為例:

layout:通用布局文件資源

layout-land:寬屏布局文件資源

layout-small:小屏幕布局文件資源

layout-w820dp:屏幕寬度為820dp的布局文件資源

多語言支持

Android系統作為全球智能設備占有率最高的系統,對多語言的支持自然必不可少,以值資源文件為例:

values:通用值資源

values-es.xml:西班牙語言環境值資源

values-zh.xml:簡體中文語言環境值資源

多系統版本支持

為了解決系統碎片化,那麼多系統版本的支持自然必不可少,以值資源文件為例;

values:通用值資源

values-v21.xml:Android 5.0及以上版本的值資源

度量單位

很多Android初學者總是不明白在Android系統中的度量單位,下面對一些常見的度量單位進行解釋:

dp:可以簡單理解為屏幕密度,1dp在高屏幕密度和低屏幕密度的設備上的表現是不同的,為了尺寸能隨屏幕密度的變動而變動,一直保持與屏幕的比例,通常來說都建議只用dp作為度量單位。

dip:等同於dp,只是換了一個馬甲而已。

sp:可以簡單理解為絕對的像素,sp不隨屏幕密度的變化而變化,在不同設備間一直保持固定大小,對於希望保持固定大小的內容,可以使用sp作為度量單位,例如在小屏幕上對文字使用dp,可能因為屏幕過小,而導致文字等比縮放後,文字過小而無法閱讀的情況,這時候,使用sp將保持文字在不同設備上的大小是一致的.

px:忘記這個在web開發中最常用到的單位吧,在Android系統中,它是不被推薦使用的,所以它的含義,也就不解釋了,希望所有Android開發者都能忘掉它。

 

 

 

 

歡迎轉載,轉載同時請尊重版權,附上本文原文鏈接:點擊這裡

 

 

==============================

 更多內容,歡迎查看本人博客:何問起的博客

==============================

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved