安卓圖片顯示的一些怪象
1、RatingBar
星星圖片上和左各有一個空白像素或四周各有一個空白像素,導致用
android:layout_width="wrap_content"
android:layout_height="wrap_content"
或固定大小時,圖片不能正常顯示。解決方法:只讓星星圖片的右和底部有一個空白的像素。
2.點9圖
點9圖(正方形的圖,4周各有一個空白像素用於拉伸填充)橫向(長大於寬)顯示時,導致中間的圖片不居中(做點9圖時效果是居中的);
解決辦法:在右側再多加一個空白像素(2個,一個用於拉伸),左側一個空白像素用於拉伸。
9-patch圖片的規則和原理
1. 文件名爲 *.9.png, 描述的1張100x100的9-patch圖片(當然也可以是其他大小)
2. 圖片上下左右各留出1個像素的9-patch標識區域,因此改圖片的大小實際應爲爲 102x102.但是程序裏面解析出來會去掉周圍1個像素, 還是100x100的圖
3.周圍的每個像素滿足條件:要麼全透明,要麼全黑
下面是對於上邊和左邊的標識區域的說明:
1.上部和左部必須具有一條黑線,分別標識出水平方向和垂直方向需要拉伸的區域
下面是對右邊和下邊黑線的說明:
1. 右部和下部的黑線是可選的,但是就算沒有黑線也要留出1個像素的空白區域.
3.android:maxLength和android:maxEms
(1)android:maxLength設置最多顯示字符數,與android:layout_width="wrap_content"或者match_parent無關,超出部分不會顯示成...(省略號), 即使加上android:singleLine="true" android:ellipsize="end"
(2)android:maxEms設置寬度最多N字符寬度,與android:layout_width="wrap_content"有效,與match_parent搭配時無效,超出部分不會顯示成...,但是加上android:singleLine="true" android:ellipsize="end"時,會顯示出...(省略號)