一、 Android XML 屬性
- android:baselineAligned="false"
在專案中會經常使用layout_weight屬性利用比重來設定控制元件的大小,比如4個button各佔用了LinearLayout寬度的1/4,而且是上邊緣和下邊緣都是對齊的,是我們預期想要的效果,但是當第三個button的Text內容變長時,會變成如下的效果: 會發現第三個內容由於長度超過LinearLayout寬度的1/4,會換行,這個是正常的,但是卻發現整個button位置下移了,沒有和其他三個button對齊,很醜,這是怎麼回事呢,仔細看button中text會發現Next和第三個button中text第一行是位於一條水平線上的,這個水平線其實就是所謂的baseline,檢視Android develper的LinearLayout的API會發現有一個屬性:android:baselineAligned,這個屬性預設是true,所以LinearLayout裡面的子View預設是baseline 對齊的,這就會導致第三個button第一行為了和其他button的text對齊下移
- android:textAlignment="center"
- ImageView中XML屬性src和background的區別:
- 1)二者都可以用來展示某個drawable android:background:background會根據ImageView元件給定的長寬進行拉伸,
- 2)android:src:而src就存放的是原圖的大小,不會進行拉伸。src是圖片內容,bg是背景,可以同時使用。
此外:scaleType只對src起作用; bg可設定透明度,比如在ImageButton中就可以用Android:scaleType控制圖片的縮放方式,
- android:layout_alignTop
android:layout_alignLeft="@id/center_btn"和某一個控制元件的左邊對齊
android:layout_alignRight="@id/center_btn"和某一個控制元件的右邊對齊
android:layout_alignTop="@id/center_btn"和某一個控制元件的上方對齊
android:layout_alignBottom="@id/center_btn"和某一個控制元件的下方對齊
複製程式碼
-
Android佈局技巧:使用TextView的drawable屬性
- TextView有一些屬性可以在Text的四周設定一個drawable物件,圖片,shape等合法的drawable都可以用。 left/top/right/bottom就是在文字的上下左右放置drawable。而drawableStart和drawableEnd則有特殊的意義,雖然它們是API 14加上去的,但是要在API 17後才能真正的生效,它們的作用是當語言方向發生變化時,會換邊,LTR語言drawableStart在左邊,而drawableEnd在右邊;但對於RTL語言來說就會反過來drawableStart在右,drawableEnd在左
android:drawableBottom:在text的下方輸出一個drawable,可以是圖片,樣式,顏色等。 android:drawableLeft:在text的左邊輸出一個drawable,可以是圖片,樣式,顏色等。 android:drawableRight:在text的右邊輸出一個drawable,可以是圖片,樣式,顏色等。 android:drawableTop:在text的正上方輸出一個drawable,可以是圖片,樣式,顏色等。 android:drawableStart: 在text的開始處輸出一個drawable,可以是圖片,樣式,顏色等。 android:drawableEnd: 在text的結束處輸出一個drawable,可以是圖片,樣式,顏色等 複製程式碼
- TextView的drawable的一些注意事項
1、TextView的padding作用在drawable之外 2、TextView的高度或寬度為wrap_content時將是文字和drawable中較大的那一個,再加上padding和margin 3、gravity只對文字起作用,對drawable不起作用 4、drawable會在其所在的維度居中顯示,比如drawableLeft是上下垂直居中的,以此類推 複製程式碼