Android之Spinner⽤法详解
⽬录
⼀、Spinner的两种展⽰样式⼆、Spinner相关⽅法三、Spinner⽤法举例
XML布局⽂件activity_main.xml选中⽂字样式item_select.xml列表其他⽂字样式item_dropdown.xmlJava代码MainActivity.java四、dropdown模式下的列表分割线
⼀、Spinner的两种展⽰样式
下拉列表的展⽰⽅式有两种,⼀种是在当前下拉框的正下⽅展⽰列表,此时把spinnerMode属性设置为dropdown;另⼀种是在页⾯中部以对话框形式展⽰列表,此时把SpinnerMode属性设置为dialog。
⼆、Spinner相关⽅法
setPrompt:设置标题⽂字。
setAdapter:设置下拉列表的适配器。
setSelection:设置当前选中哪项。注意该⽅法要在setAdapter⽅法之后调⽤。
setOnItemSelectedListener:设置下拉列表的选择,该要实现接⼝OnItemSelectedListener。
三、Spinner⽤法举例
XML布局⽂件activity_main.xml
android:layout_width=\"200dp\" android:id=\"@+id/spinner\"android:layout_height=\"wrap_content\"
android:layout_gravity=\"center_horizontal\" android:spinnerMode=\"dropdown\"
android:dropDownVerticalOffset=\"45dp\" android:background=\"@null\"/>
选中⽂字样式item_select.xml
android:background=\"@android:color/holo_blue_dark\" android:textSize=\"14sp\"android:textColor=\"@android:color/holo_red_light\" android:gravity=\"center\"/>
列表其他⽂字样式item_dropdown.xml
android:textColor=\"@android:color/black\" android:textSize=\"14sp\" android:gravity=\"center\"/>Java代码MainActivity.java
public class MainActivity extends AppCompatActivity{
private String[] starArray = {\"⽔星\⾦星\地球\⽕星\⽊星\⼟星\
@Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initSpinner(); }
private void initSpinner(){
//声明⼀个下拉列表的数组适配器
ArrayAdapter starAdapter = new ArrayAdapter(this,R.layout.item_select,starArray); //设置数组适配器的布局样式starAdapter.setDropDownViewResource(R.layout.item_dropdown); //从布局⽂件中获取名叫sp_dialog的下拉框 Spinner sp = findViewById(R.id.spinner);
//设置下拉框的标题,不设置就没有难看的标题了 sp.setPrompt(\"请选择⾏星\"); //设置下拉框的数组适配器 sp.setAdapter(starAdapter); //设置下拉框默认的显⽰第⼀项 sp.setSelection(0);
//给下拉框设置选择,⼀旦⽤户选中某⼀项,就触发的onItemSelected⽅法 sp.setOnItemSelectedListener(new MySelectedListener()); }
class MySelectedListener implements AdapterView.OnItemSelectedListener{
@Override
public void onItemSelected(AdapterView> adapterView, View view, int i, long l) {
Toast.makeText(MainActivity.this,\"您选择的是:\"+starArray[i],Toast.LENGTH_SHORT).show(); }
@Override
public void onNothingSelected(AdapterView> adapterView) {
} }}
四、dropdown模式下的列表分割线
只需要在style中添加如下代码即可添加样式
然后在AppTheme中调⽤
- @style/XSpinnerStyle
但注意,该分割线只有是dropdown样式时才会显⽰
到此这篇关于Android之Spinner⽤法详解的⽂章就介绍到这了,更多相关Android之Spinner⽤法内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!