方法1(非动态创建):
Spinner创建:
1.在布局栏创建spinner控件。
- <Spinner
- android:id="@+id/spinner1"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentTop="true"
- android:layout_centerHorizontal="true"
- android:layout_marginTop="40dp" />
- <string-array name="users">
- <item >first</item>
- <item >second</item>
- <item >third</item>
- <item >forth</item>
- <item >fifth</item>
- </string-array>
通过数据适配器把数据与控件绑定
第一个参数 当前对象
第二个参数 string.xml 中 string-array 节点的 name="user"
第三个参数 系统默认的文本样式
- ArrayAdapter Adapter = ArrayAdapter.createFromResource(
- this,
- R.array.users,
- android.R.layout.simple_spinner_item);
- Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- Spinner sp = (Spinner) findViewById(R.id.spinner1);
- sp.setAdapter(Adapter);
- sp.setPrompt("序号");
Spinner创建:
1.首先要创建监听器对象,为OnItemSelectedListener对象。其中,onItemSelected函数中:第一个参数为:Spinner对象本身
第三个参数为:选中的位置
- OnItemSelectedListener listener =new OnItemSelectedListener() {
- @Override
- public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
- long arg3) {
- // TODO Auto-generated method stub
- String item;
- item=arg0.getItemAtPosition(arg2).toString();
- Toast.makeText(MainActivity.this, item, 0).show();
- }
- @Override
- public void onNothingSelected(AdapterView<?> arg0) {
- // TODO Auto-generated method stub
- Toast.makeText(MainActivity.this, "请选择一个选项", 0).show();
- }
- };
- sp.setOnItemSelectedListener(listener);
方法2(动态创建):
1.在layout文件夹中创建布局文件item.xml,在其中加入TextView控件。
2.做数据,本例中使用了ArrayList来存储数据
- ArrayList<String> names = new ArrayList<String>();
- names.add("Frank");
- names.add("Chales");
- names.add("Cross");
- names.add("james");
- names.add("Aaron");
- ArrayAdapter adapter = new ArrayAdapter(
- this,
- R.layout.item,
- R.id.tv_names,
- names);
- Spinner sp = (Spinner) findViewById(R.id.spinner1);
- sp.setAdapter(adapter);