2012-12-27 17 views
0

我正在使用圖層列表來創建底部只有1dp邊框的形狀。Android:自定義形狀(圖層列表的行爲)

我寫了一個XML創建形狀

<!-- Bottom Line --> 

<item> 

    <shape android:shape="rectangle" > 

     <solid android:color="#CCCCCC" /> 
    </shape> 
</item> 

<item android:bottom="1dp"> 

    <shape android:shape="rectangle" > 

     <gradient 
      android:angle="270" 
      android:endColor="@color/gradient_end" 
      android:startColor="@color/gradient_start" /> 
    </shape> 
</item> 

這完全適用於所有的手機除了具有小屏幕尺寸的手機。在小屏幕尺寸的邊界不顯示。這是在Android的某種錯誤,或者我做錯了什麼?

+0

值的顏色:<顏色名稱=「gradient_start」>#FFFFFF <顏色名稱=「gradient_end」>#EEEEEE –

+1

不是一個真正的答案,但只是覺得我應該指出的是,繪圖使用這種方法行在[透支]方面相當昂貴(http://www.curious-creature.org/2012/12/01/android-performance-case-study/)。您可能最終會不止一次地繪製大面積區域,只是將一條水平線可視化。 –

+0

Absoultely正確的MH。你能否提出一些其他方法來達到同樣的效果? –

回答

0

我假設1dp小於一個像素的小屏幕尺寸。嘗試對android:bottom使用2dp或1px。