android学习—两种方法实现spinner控件
两种方法实现 spinner
1. 布局文件
mail.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:prompt="@string/change_class"
/>
</LinearLayout>
item.xml
<?xml version="1.0" encoding="utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/spinner_item"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, spinner!</string>
<string name="app_name">SpinnerDemo</string>
<string name="change_class">选择一门课程</string>
<string-array name="spinner_array" >
<item>Java</item>
<item>C#</item>
<item>PHP</item>
<item>Android</item>
</string-array>
</resources>
spinner.java
// 1. 得到spinner控件
Spinner spinner = (Spinner) findViewById(R.id.spinner);
// 2.creat a ArrayAdapter 第二个参数是设置xml中的数组 第三个是设置spinner的样式 */
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.spinner_array, android.R.layout.simple_spinner_item);
//3.设置下拉列表的样式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//4.设置Adapter */
spinner.setAdapter(adapter);
//设置下拉列表标题 也可以在 xm 中实现
spinner.setPrompt("修改下拉列表标题");
//设置默认选中的
//spinner.setSelection(2, true);
spinner.setOnItemSelectedListener(new SpinnerItemOnSelectListener());
另外一种方法:
// 1. 得到spinner控件
Spinner spinner = (Spinner) findViewById(R.id.spinner);
用list添加数据
List<String> list=new ArrayList<String>()
list.add("手动Java");
list.add("手动PHP");
list.add("手动C#");
//自定义布局 ,和显示item 的控件id
ArrayAdapter adapter=new ArrayAdapter (this, R.layout.item, R.id.spinner_item, list);
//4.设置Adapter */
spinner.setAdapter(adapter);
//设置下拉列表标题 也可以在 xm 中实现
spinner.setPrompt("修改下拉列表标题");
//设置默认选中的
//spinner.setSelection(2, true);
spinner.setOnItemSelectedListener(new SpinnerItemOnSelectListener());