user831722
user831722

Reputation:

How to change image of a spinner

If we see a spinner it looks like a textview and with an image to the right of textview. In Motorola milestone that image is down arrow while in Samsung galaxy ace it is right arrow. I can set background image to a spinner using the following code. But I donot want to change the background image. I want to change that image. How to set that image of a spinner.

Spinner sp1 = (Spinner) findViewById(R.id.spnContactTypes1);
sp1.setBackgroundResource(R.drawable.icon);

Upvotes: 5

Views: 14311

Answers (1)

rds
rds

Reputation: 27004

You want to change the spinner selector

This is done with:

<Spinner android:id="@+id/my_spinner"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:drawSelectorOnTop="true"
 android:spinnerSelector="@drawable/myspinner_selector">

and in myspinner_selector.xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_first="true"
      android:state_dropdown_showing="true"
      android:drawable="@drawable/btn_dropdown_down"/>  
<!-- other states ... -->
</selector>

Upvotes: 1

Related Questions