2011-02-06 68 views
0

我試圖將ImageDrawable顯示爲ImageButton圖像。所有圖層必須具有不同的最高值。如top += 10;。爲此我用setLayerInset繪製圖層項目,但它拉伸的圖像。我也嘗試了不同的參數,它只是顯示了其他愚蠢的佈局。具有LayerDrawable圖像的Android ImageButton

的setLayerInset嘗試後,我用InsetDrawable,給頂參數自己的構造:

new InsetDrawable(resources.getDrawable(R.drawable.soldier), 0, layerTop, 0, 0); 

此時,頂部看起來不錯,但顯示的ImageButton它的一個非常小的區域。

基本佈局, 讓的說,這是我的形象,

 
*---* 
| | 
| | 
--- 

佈局應該是,

 
*---* 
| | 
*---* 
| | 
*---* 
| | 
*---* 
| | 
| | 
--- 

回答

0

我設置android:scaleType="fitStart",改變了線的下方,它正在像魅力。

new InsetDrawable(resources.getDrawable(R.drawable.soldier), 0, layerTop,0,-layerTop); 

現在我有更多的問題,

首先,你可以看到我創建一個新的實例爲每一個層。如果我只創建一個Drawable對象,並將其設置爲將用於創建LayerDrawable並使用layerDrawable.setLayerInset函數來設置頂部和底部屬性的陣列的每個項目,它會更有效。

而另一個如果LayerDrawable對象具有比imageButton更大的項目,它仍然顯示圖像。有沒有像CSS overflow:hidden之類的設置?

謝謝。