1.第三方资源
https://github.com/arcadefire/nice-spinner
点着时候多个动画
2.原生
<!--android:dropDownWidth="300dp" 弹出的内容的宽度-->
<!--android:spinnerMode="dialog" 下弹 或者 Dialog-->
<!--android:overlapAnchor="false" 默认是遮住第一个的 -->
<!--android:background="@null" 去掉三角符号 -->
<!--android:background="@color/colorPrimary" 选中项的颜色 即背景-->
<!--android:popupBackground="@color/colorAccent" 弹出窗的颜色-->
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
public class MainActivity extends AppCompatActivity {
private Spinner spinner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
List<String> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
list.add("我是第"+i+"条");
}
// ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,
// android.R.layout.simple_spinner_dropdown_item, list);
// adapter.setDropDownViewResource();
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,R.layout.spinner_display_style,R.id.txtvwSpinner, list);
adapter.setDropDownViewResource(R.layout.spinner_dropdown_style);
spinner.setAdapter(adapter);
spinner.setSelection(5);
int selectedItemPosition = spinner.getSelectedItemPosition();
Toast.makeText(this, ""+selectedItemPosition, Toast.LENGTH_SHORT).show();
}
private void initView() {
spinner = (Spinner) findViewById(R.id.spinner);
}
}
自定义更多一点 写俩XML
spinner_display_style.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/txtvwSpinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#fff"
android:textColor="#f00"
android:textStyle="bold|italic" />
</LinearLayout>
spinner_dropdown_style.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/txtvwSpinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f0f"
android:textColor="#fff0"
android:textStyle="normal|italic" />
</LinearLayout>
https://blog.csdn.net/badboy007/article/details/19034609
如果还不行,自己写个BaseAdapter 呗....多大点事