Change Spinner Dropdown Icon
Answer :
Try applying following style to your spinner using
style="@style/SpinnerTheme"
//Spinner Style:
<style name="SpinnerTheme" parent="android:Widget.Spinner"> <item name="android:background">@drawable/bg_spinner</item> </style>
//bg_spinner.xml Replace the arrow_down_gray with your arrow
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <layer-list> <item> <shape> <gradient android:angle="90" android:endColor="#ffffff" android:startColor="#ffffff" android:type="linear" /> <stroke android:width="0.33dp" android:color="#0fb1fa" /> <corners android:radius="0dp" /> <padding android:bottom="3dp" android:left="3dp" android:right="3dp" android:top="3dp" /> </shape> </item> <item android:right="5dp"> <bitmap android:gravity="center_vertical|right" android:src="@drawable/arrow_down_gray" /> </item> </layer-list> </item> </selector>
Add theme to spinner
<Spinner style="@style/SpinnerTheme" android:layout_width="match_parent" android:layout_height="match_parent"/>
Add spinnerTheme to styles.xml
<style name="SpinnerTheme" parent="android:Widget.Spinner"> <item name="android:background">@drawable/spinner_background</item> </style>
Add New -> "Vector Asset" to drawable with e.g. "ic_keyboard_arrow_down_24dp"
Add spinner_background.xml to drawable
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <layer-list> <item android:drawable="@drawable/ic_keyboard_arrow_down_24dp" android:gravity="center_vertical|right" android:right="5dp"/> </layer-list> </item> </selector>
For this you can use .9 Patch Image and just simply set it in to background.
android:background="@drawable/spin"
Here i'll give you .9patch image. try with this.
Right click on image and click Save Image as
set image name like this : anyname.9.png and hit save.
Enjoy.. Happy Coading. :)
Comments
Post a Comment