1.关于spinner控件有很多特殊的样式甚至是表现的很夸张的样式,这里就仅仅通过更换系统自带的xml样式来试验各种spinner样式效果。
首先在工程里创建最简单的spinner:
需要更换的地方有两处:、
一。ArrayAdapter< String> adapter =
new ArrayAdapter< String>( this,
android.R.layout.simple_spinner_item);
这里面的第二个参数是android.R系统自带的xml样式,我们更换这个时就会看到生成的spinner的直观样式如下:
如果换成android.R.layoutbrowser_link_context_header那么样式变为:
同理:android.R.pinner_dropdown:
android.R.preference_category:
android.R.simple_spinner_item
android.R.select_dialog_item:
android.R.select_dialog_multichoice
android.R.select_dialog_singlechoice
android.R.simple_dropdown_item_1line
android.R.simple_expandable_list_item_1
android.R.simple_gallery_item
android.R.simple_list_item_1
android.R.simple_list_item_checked
android.R.simple_list_item_multiple_choice
android.R.simple_list_item_single_choice
android.R.simple_spinner_dropdown_item
android.R.simple_spinner_item
android.R.test_list_item
然后还有自定义的spinner.xml:
<TextView xmlns:android=" http://schemas.android.com/apk/res/android"
android:id="@+id/text1"
android:layout_width="60px"
android:layout_height="wrap_content"
android:singleLine="true"
style="?android:attr/spinnerItemStyle"
/>
首先在工程里创建最简单的spinner:
01 | public void onCreate(Bundle savedInstanceState) { |
02 | super .onCreate(savedInstanceState); |
03 | // setContentView(R.layout.main);//不用xml |
04 |
05 | Spinner sp= new Spinner( this ); |
06 |
07 | ArrayAdapter< String> adapter = |
08 | new ArrayAdapter< String>( this , |
09 | android.R.layout.simple_spinner_item); |
10 | adapter.add( "red" ); |
11 | adapter.add( "green" ); |
12 | adapter.add( "yellow" ); |
13 | adapter.add( "black" ); |
14 | adapter.add( "write" ); |
15 | adapter.add( "blue" ); |
16 |
17 | adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
18 |
19 | sp.setAdapter(adapter); |
20 |
21 | LinearLayout l= new LinearLayout( this ); |
22 | LinearLayout.LayoutParams ll= new LinearLayout.LayoutParams( |
23 | LinearLayout.LayoutParams.WRAP_CONTENT, |
24 | LinearLayout.LayoutParams.WRAP_CONTENT |
25 | ); |
26 | l.addView(sp,ll); |
27 |
28 | setContentView(l); |
29 |
30 |
31 |
32 | } |
一。ArrayAdapter< String> adapter =
new ArrayAdapter< String>( this,
android.R.layout.simple_spinner_item);
这里面的第二个参数是android.R系统自带的xml样式,我们更换这个时就会看到生成的spinner的直观样式如下:
![](https://i-blog.csdnimg.cn/blog_migrate/acab93f532af3491d9f4717dbdeab648.png)
如果换成android.R.layoutbrowser_link_context_header那么样式变为:
![](https://i-blog.csdnimg.cn/blog_migrate/a1e949c0096bfc21d131742fa1d1c0ea.png)
同理:android.R.pinner_dropdown:
![](https://i-blog.csdnimg.cn/blog_migrate/7d8198b4667a591c31917d0ed2942cfa.png)
android.R.preference_category:
![](https://i-blog.csdnimg.cn/blog_migrate/627b0a35faf7e2a0906ac0fc3ef1f0b2.png)
android.R.simple_spinner_item
![](https://i-blog.csdnimg.cn/blog_migrate/c834a3413ed4c82729ef3c4fa2e6e983.png)
android.R.select_dialog_item:
![](https://i-blog.csdnimg.cn/blog_migrate/880128b356f14a165ffcb4e9b7164666.png)
android.R.select_dialog_multichoice
![](https://i-blog.csdnimg.cn/blog_migrate/1f5601bfbea7f2c80a8ac9be274ce842.png)
android.R.select_dialog_singlechoice
![](https://i-blog.csdnimg.cn/blog_migrate/5c15928792ccdb0d3347084c175cb720.png)
android.R.simple_dropdown_item_1line
![](https://i-blog.csdnimg.cn/blog_migrate/ff3f1e9993d2e464dec7573273572d00.png)
android.R.simple_expandable_list_item_1
![](https://i-blog.csdnimg.cn/blog_migrate/31e442ca619ccdd1cd4939a8a910a05b.png)
android.R.simple_gallery_item
![](https://i-blog.csdnimg.cn/blog_migrate/4b9adbfb5deb988db8dcac5edb27ab77.png)
android.R.simple_list_item_1
![](https://i-blog.csdnimg.cn/blog_migrate/f439f2e38fc356d156e058261a31ffb4.png)
android.R.simple_list_item_checked
![](https://i-blog.csdnimg.cn/blog_migrate/2a1b5db69a27261e8c14e17921cc2594.png)
android.R.simple_list_item_multiple_choice
![](https://i-blog.csdnimg.cn/blog_migrate/8cadaecedc33ff9ef9d275c153b4834f.png)
android.R.simple_list_item_single_choice
![](https://i-blog.csdnimg.cn/blog_migrate/19d99ea5ac9de2b4c0e7d2716b679b21.png)
android.R.simple_spinner_dropdown_item
![](https://i-blog.csdnimg.cn/blog_migrate/98d64f14a942f1556e85424002fcbd62.png)
android.R.simple_spinner_item
![](https://i-blog.csdnimg.cn/blog_migrate/bbb5c73cbea4a80d0ce0a15881aba9e4.png)
android.R.test_list_item
![](https://i-blog.csdnimg.cn/blog_migrate/4d11ac46fc37a025812171430eb34d80.png)
然后还有自定义的spinner.xml:
<TextView xmlns:android=" http://schemas.android.com/apk/res/android"
android:id="@+id/text1"
android:layout_width="60px"
android:layout_height="wrap_content"
android:singleLine="true"
style="?android:attr/spinnerItemStyle"
/>
2. 在styles.xml文件里配置进行修改下拉列表的背景颜色,是直接修改listview的背景颜色