1. 程式人生 > >Android知識點總結(一)

Android知識點總結(一)

1、android:layout_weight 屬性的意義

1、權重的值指的是每個部件所佔剩餘空間的大小,該值與同級部件所佔空間大小有關。

2、例如,我們定義一個權重為 2 的 View,另一個 View 的權重是 1,那麼總數就是 3;這時第一個 View 佔據 2/3 的空間,第二個佔據 1/3 的空間。如果再加入第三個 View,權重設為 1,那麼第一個 View(權重為 2 的)會佔據 1/2 的空間,剩餘的另外兩個 View 各佔 1/4。

3、使用權重的前提一般是給 View 的寬或者高的大小設定為 0dp,然後系統根據上面的權重規則來計算 View 應該佔據的空間。但在很多情況下,如果給 View 設定了 match_parent 的屬性,那麼在計算權重時則不是通常的正比,而是反比。也就是說,權重值大的反而佔據空間小。

4、如果只設置了一個 View 的權重大於 0,則該 View 將佔據除去別的 View 本身佔據的空間的所有剩餘空間。

 

2、命令列gradle編譯並安裝專案

開啟命令列並切換當前目錄到Andriod專案的根目錄,在debug模式下使用Gradle編譯專案,使用gradle指令碼執行assembleDebug編譯專案,執行後會在build/目錄下生成MyFirstApp-debug.apk。

gradle編譯專案

gradlew.bat assembleDebug

編譯完成後在app/build/outputs/apk/目錄生成apk。

安裝專案

adb install app-debug.apk

3、Android適配不同的語言

為支援多國語言,在res/中建立一個額外的values目錄以連字元和ISO國家程式碼結尾命名,比如values-cn/ 是為語言程式碼為"cn"的區域設定的簡單的資原始檔的目錄。Android會在執行時根據裝置的區域設定,載入相應的資源。

例如:

MyProject/
    res/
       values/
           strings.xml
       values-es/
           strings.xml
       values-cn/
           strings.xml

4、Android適配不同螢幕

Android用尺寸和解析度這兩種常規屬性對不同的裝置螢幕加以分類。

App會被安裝在各種螢幕尺寸和解析度的裝置中。針對不同的螢幕尺寸和解析度,使用不同資源來優化其外觀。

4種普遍尺寸:小(small),普通(normal),大(large),超大(xlarge)

4種普遍解析度:低精度(ldpi), 中精度(mdpi), 高精度(hdpi), 超高精度(xhdpi)

宣告針對不同螢幕所用的layout和bitmap,必須把這些可選資源放置在獨立的目錄中。

建立不同layout為了針對不同的螢幕去優化使用者體驗,我們需要為每一種將要支援的螢幕尺寸建立唯一的XML檔案。

建立不同Bitmap我們應該為4種普遍解析度:低,中,高,超高精度,都提供相適配的bitmap資源。這能使我們的app在所有螢幕解析度中都能有良好的畫質和效果。

 

5、Android適配不同系統版本

minSdkVersion:App最低相容API的級別

targetSdkVersion:App最高適用的API級別