9-patch drawable在android 2. +和4. +上显示不同

时间:2013-11-11 13:57:14

标签: android nine-patch

我有基于9-patch drawable的列表选择器,但它在Android 2. +和4+基于android的设备上看起来不同(LG Optimus Sol E730,Nexus 4,HTC One V): android 2 +的结果

enter image description here

android 4 +

的结果

enter image description here

以下是选择器的代码:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/row_widget_selected" android:state_selected="true"/>
<item android:drawable="@drawable/row_widget_selected" android:state_pressed="true"/>
<item android:drawable="@drawable/row_widget_disabled" android:state_enabled="false"/>
<item android:drawable="@drawable/row_widget"/>

</selector>

使用选择器:

 <com.ssbs.sw.SWE.widget.SpinnerWidget
    android:id="@+id/dialog_outlet_task_edit_spinner_type"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?listWidgetSelector"  

选择器9-patch drawable enter image description here

问:正如你可以看到同一个选择器在android 4+上看起来不同,它是一个渐变为什么会这样?

1 个答案:

答案 0 :(得分:0)

我在Android 4.2 9-patch background drawn differently than older OS versions

找到了我的问题的答案

解决问题的最简单方法是关注@CommonsWare proposal并将我的所有drawable移动到res/drawable-nodpi/文件夹