2014-03-25 64 views
1

我在StateListDrawable中有填充問題。 如果對於我的一些樣式,我定義了一些帶有圖像資源的<selector>的引用,它爲我的9路圖像設置了一些錯誤的填充。順便說一下,我設置了特定的圖像 - 一切都好。但除此之外,Android的創建StateListDrawable<selector>和(因爲我看到通過使用源調試器),它使用的方法得到填充:StateListDrawable填充

Rect getConstantPadding(); 

,並返回錯誤的值(在我的情況下,它不爲空或0)。 這種方法使用mVariablePadding變量:

if (mVariablePadding) { 
    return null; 
} 

但我不能將其設置在資源虛假的(也許我做錯了什麼)。

有人知道這個問題的解決方案嗎?謝謝!

回答

0

問題出在9路徑圖像。對於選擇器,它計算九路徑可繪製的右下邊框(內容)的填充。 除了在選擇器android:variablePadding中有變量,計算填充(選擇最大等)。所以它可以仍然不是0,即使在大多數情況下圖像沒有填充。