1
我有一個ImageView
和<layer-list>
在/res/drawable/
。這是層列表:ImageView src和背景標記使用<layer-list>時集中<bitmap>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<!-- This is a 24dp x 24dp PNG -->
<bitmap android:src="@drawable/ic_secondary_arrow"
android:gravity="center"/>
</item>
<item>
<shape android:shape="oval">
<stroke android:color="@color/icon_primary_background"
android:width="2dp"/>
<solid android:color="@android:color/transparent" />
</shape>
</item>
</layer-list>
的ImageView有沒有什麼特別的:
<ImageView
android:id="@+id/arrow"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_margin="16dp"/>
當使用src
或setImageDrawable(int)
指向層列表,center
似乎被忽略(或至少這不是我希望的行爲):
我想下面顯示。這是可能的使用background
(或setBackground(Drawable)
),而不是src
:
我堅持的原因是因爲setBackground(Drawable)
限制爲API16 +,我寧願不限制,因爲這樣我的觀衆。
那麼,我錯過了什麼?
編輯:作爲@pskink指出下面,我失蹤setBackgroudDrawable(Drawable)
。但是,這仍然是一個偶然的問題。我真的很想知道在這種情況下,src
和background
(以及相應的方法)的不同行爲背後的原因是什麼。
在api16-是setBackgroudDrawable – pskink 2014-09-04 21:36:17
@pskink謝謝。不知何故Studio即使在熱鍵輸入方法時也會在最後離開該方法。但是,你是否知道'src'和'background'之間不同行爲背後的原因?我的意思是,我想知道我錯過了什麼。 – davidcesarino 2014-09-04 21:45:31
嗯,你的代碼工作正常圖標是在中心,小尺寸,經過測試的模擬器2.2 – pskink 2014-09-05 07:49:34