spinner中ArrayAdapter中传递对象的用法
来源:互联网 发布:冒险岛新数据库 编辑:程序博客网 时间:2024/06/06 08:57
今天网上看到spinner中ArrayAdapter中传递对象的用法 ,觉得很是不错,拿来看看当做学习了
来源地址:http://www.blogjava.net/anchor110/articles/356250.html
描述:
一般情况下,我们会用ArrayList<String>来填充Spinner中的Adapter。
但有时,我们需要传递一些对象,比如选择用户的时候,显示的是用户名,但我们要处理的是用户ID。
这时侯如果用ArrayList<String>,则不能满足我们的需求,因为,ID没地方储存。
查阅API,发现ArrayAdapter的类声明为ArrayAdapter<T>,说明,我们可以把T替换成我们想要的对象。
于是我们可以构建如下的语句:
ArrayList<User> users = new ArrayList<User>();
android.R.layout.simple_spinner_item,
users
);
但这时有会遇到一个问题,既然你传递过来的是一个obj,但我的要求是:显示用name显示,处理用id,这个怎么实现咧。
答案是,重写User的toString()方法,只返回name。这样就能满足我们的需求啦。当然,这只是一种简单的做法,一般情况下,还有另一种写法,就是重写adapter。
一般情况下,我们会用ArrayList<String>来填充Spinner中的Adapter。
但有时,我们需要传递一些对象,比如选择用户的时候,显示的是用户名,但我们要处理的是用户ID。
这时侯如果用ArrayList<String>,则不能满足我们的需求,因为,ID没地方储存。
查阅API,发现ArrayAdapter的类声明为ArrayAdapter<T>,说明,我们可以把T替换成我们想要的对象。
于是我们可以构建如下的语句:
ArrayList<User> users = new ArrayList<User>();
ArrayAdapter<Group> adapter = new ArrayAdapter<Group>(
this,android.R.layout.simple_spinner_item,
users
);
但这时有会遇到一个问题,既然你传递过来的是一个obj,但我的要求是:显示用name显示,处理用id,这个怎么实现咧。
答案是,重写User的toString()方法,只返回name。这样就能满足我们的需求啦。
- spinner中ArrayAdapter中传递对象的用法
- Spinner 和 ArrayAdapter 的用法
- Android中Spinner的用法
- Android中intent传递对象和Bundle的用法
- Android中intent传递对象和Bundle的用法
- Android中intent传递对象和Bundle的用法
- Android中intent传递对象和Bundle的用法
- Android中intent传递对象和Bundle的用法
- Android中intent传递对象和Bundle的用法
- Android中Spinner(下拉列表的用法)的用法
- Android中ArrayAdapter的使用
- Android中arrayAdapter的使用
- Android 中ArrayAdapter 的使用
- spinner ArrayAdapter
- Spinner ArrayAdapter
- Spinner---ArrayAdapter
- Android中对象的传递
- Android中spinner的简单用法(1)
- 你会用sizeof吗?(vc篇)--有关“字节对齐”
- linux安装jdk环境
- ubuntu qq
- loop设备及losetup命令介绍
- C++函数中那些不可以被声明为虚函数的函数
- spinner中ArrayAdapter中传递对象的用法
- 在VC6.0中用GDI+调用png图片实现半透明渐变的特效窗口
- iOS开发复用代码小片段-判断邮箱是否合法的代码
- 访问https接口
- Unix网络编程服务器设计方式之四
- Ubuntu 11.10 安装后要做的12件事情
- 进程调度2 读操作系统概念第六版
- 腾讯2011.10.15校园招聘会笔试题
- 学习java的前奏