Android的Spinner
使用Spinner遇到不少坑啊
3.自定义spinner样式
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:spinnerItemStyle">@style/AppTheme.SpinnerItemStyle</item> <item name="android:spinnerDropDownItemStyle">@style/AppTheme.SpinnerDropDownItemStyle</item> </style> <style name="Spinner" parent="Widget.AppCompat.Spinner"> <item name="android:popupBackground">@drawable/abc_popup_background_mtrl_mult</item> </style> <style name="AppTheme.SpinnerItemStyle" parent="Widget.AppCompat.TextView.SpinnerItem"> <item name="android:textColor">#ffffff</item> </style> <style name="AppTheme.SpinnerDropDownItemStyle" parent="Widget.AppCompat.DropDownItem.Spinner"> <item name="android:background">?attr/selectableItemBackground</item> <item name="android:textColor">#212121</item> </style>
1.调用了setSelection()之后不会马上调用onItemSelected
2.想调用setSelection之后不调用onItemSelected,需要写如下代码,注意顺序
spinner.setSelection(spinnerItem, true);//这里必须传true参数,否则还是会调用onItemSelected spinner.setOnItemSelectedListener(this);