如何在Spinner中获取所有项目?
我在尝试搜索从Spinner
获取所有项目的方法时遇到了问题,但我无法找到优雅的解决方案。唯一的解决方案似乎是在将项目列表添加到Spinner
还有另一种更好的方法吗?
答案 0 :(得分:14)
如果您知道微调器存储的对象类型,那么执行此操作的简单而优雅的方法是:
public class User {
private Integer id;
private String name;
/** Getters and Setters **/
@Override
public String toString() {
return name;
}
}
鉴于上一课程和Spinner
包含User
列表,您可以执行以下操作:
public List<User> retrieveAllItems(Spinner theSpinner) {
Adapter adapter = theSpinner.getAdapter();
int n = adapter.getCount();
List<User> users = new ArrayList<User>(n);
for (int i = 0; i < n; i++) {
User user = (User) adapter.getItem(i);
users.add(user);
}
return users;
}
这对我有帮助!我希望能为你做到这一点!