когда я использую свою собственную тему фона для spinner, она растягивает значок.
мой код счетчика:
<Spinner android:id="@+id/spinnerCategory" style="@style/spinner"
android:entries="@array/category_array" android:prompt="@string/category_prompt"
android:background="@drawable/spinner" />
my spinner.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_enabled="true"
android:drawable="@drawable/btn_dropdown_normal" />
<item android:state_pressed="true" android:drawable="@drawable/btn_dropdown_pressed" />
<item android:state_focused="true" android:state_enabled="true"
android:drawable="@drawable/btn_dropdown_selected" />
<item android:state_enabled="true" android:drawable="@drawable/btn_dropdown_normal" />
</selector>
и изображения, которые я скопировал из sdk 4.
так любезно помогите мне. как я могу прекратить растяжение иконок.
У меня была та же самая пробка... я просто установил (жестко закодировал) высоту spinner 2 где-то около 48-50 dip...
Вам нужно создать 9 патч-изображений, как в этом туто: http://stephenpengilley.blogspot.fr/2013/01/android-custom-spinner-tutorial.html
или создать динамический рисованный фон (dropdown_shape.xml), например:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<item
android:bottom="6sp"
android:top="6sp"
>
<shape
android:thickness="0dp"
android:shape="rectangle">
<solid android:color="@android:color/white"/>
<stroke android:width="1dip" android:color="#000000" />
<corners android:radius="6sp"/>
</shape>
</item>
<item
android:gravity="center_vertical|right"
android:right="18sp"
>
<vector
android:height="12sp"
android:width="16sp"
android:viewportHeight="100"
android:viewportWidth="100" >
<group>
<path
android:strokeWidth="3"
android:strokeColor="#000000"
android:fillColor="#FF0000"
android:pathData="m 0,0 l 100,0 -50,100 z" />
</group>
</vector>
</item>
</layer-list>
</item>
и используйте его как:
<Spinner
android:layout_width="wrap_content"
android:layout_height="58dp"
android:entries="@array/month_array"
android:background="@drawable/dropdown_shape"
android:paddingStart="12dp"
android:paddingEnd="40dp"
android:spinnerMode="dropdown" />