Android - 如何获取Spinner中的所有项目?

时间:2015-08-20 20:05:53

标签: android spinner items

如何在Spinner中获取所有项目?

我在尝试搜索从Spinner获取所有项目的方法时遇到了问题,但我无法找到优雅的解决方案。唯一的解决方案似乎是在将项目列表添加到Spinner

之前存储

还有另一种更好的方法吗?

1 个答案:

答案 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;
}

这对我有帮助!我希望能为你做到这一点!