Android 之 Spinner 键值对的绑定
2012-05-30 16:09
288 查看
很多时候我们会在下拉菜单中绑定一个值,但是 Spinner本身不提供这样的服务.
首先要定义一个Item类,有以下要注意的:
要重写它的.Tostring()函数,因为适配器在显示数据的时候,如果传入适配器的对象不是字符串的情况下,直接就使用对象.toString()
在onCreate 里面代码如下:
main.xml
运行结果如图:
首先要定义一个Item类,有以下要注意的:
要重写它的.Tostring()函数,因为适配器在显示数据的时候,如果传入适配器的对象不是字符串的情况下,直接就使用对象.toString()
public class CItem { private int ID; private String Value = ""; public CItem() { ID = 0; Value = ""; } public CItem(int _ID, String _Value) { ID = _ID; Value = _Value; } @Override public String toString() { // 为什么要重写toString()呢?因为适配器在显示数据的时候,如果传入适配器的对象不是字符串的情况下,直接就使用对象.toString() // TODO Auto-generated method stub return Value; } public int GetID() { return ID; } public String GetValue() { return Value; } }
在onCreate 里面代码如下:
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mySpinner = (Spinner) findViewById(R.id.Spinner_mySpinner); List<CItem> lst = new ArrayList<CItem>(); for (int i = 0; i < 10; i++) { /* * 首先新建一个list,赋值 * ID为序号 */ CItem item = new CItem(i, "value of " + i); lst.add(item); } ArrayAdapter<CItem> myaAdapter = new ArrayAdapter<CItem>(this, android.R.layout.simple_spinner_item, lst); mySpinner.setAdapter(myaAdapter); mySpinner.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { /* * ids是刚刚新建的list里面的ID */ int ids = ((CItem) mySpinner.getSelectedItem()).GetID(); System.out.println(ids); Toast.makeText(getApplicationContext(), String.valueOf(ids), Toast.LENGTH_LONG).show(); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); }
main.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" > <Spinner android:id="@+id/Spinner_mySpinner" android:layout_width="wrap_content" android:layout_height="wrap_content"></Spinner> </LinearLayout>
运行结果如图:
相关文章推荐
- Android Spinner 绑定键值对
- Android 之 Spinner 键值对的绑定
- Android 之 Spinner 键值对的绑定
- Android 之 Spinner 键值对的绑定
- android 绑定spinner键值对显示内存地址的问题
- Android 之 Spinner 键值对的绑定
- Android 之 Spinner 键值对的绑定(转)
- Android 之 Spinner 键值对的绑定
- Android开发,建立具有键值对(key-value)关系的spinner
- 三十四、Android Spinner控件之键值对用法
- Android Spinner控件之键值对用法
- Android中Spinner控件之键值对用法实例分析
- Android Spinner控件数据绑定
- Android开发学习笔记:为动态添加的Spinner控件绑定数据源以及监听事件
- Android Spinner控件之键值对用法
- Android Spinner绑定默认项
- Android控件Spinner监听之绑定ImageView
- android开发步步为营之23:Spinner进阶绑定包含key和value的对象
- Android开发适配器系列:Spinner绑定ArrayAdapter适配器
- Android中简单实现Spinner的数据绑定