java - 从 Spinner OnItemSelectedListener 事件中获取先前选择的项目

标签 java android

有没有一种方法可以从微调器上的 ItemSelected 事件中获取先前选择的项目?我的第一个想法是响应 OnItemClickedEvent,但微调器不支持该方法。

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
        {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
                {

                MyItem current = (MyItem) parent.getItemAtPosition(position);
                //MyItem previous = (MyItem) parent.getPrevious ... how
                }

                @Override
                public void onNothingSelected(AdapterView<?> parent)
                {
                //do nothing
                }
            });

我知道我可以只缓存以前的值,但这似乎是一个应该有方法的常见操作。

最佳答案

使用变量来跟踪上一个项目。它可能在 Activity 的成员处。

    MyItem previous, current;
    ...

    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
    {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
            {
                previous = current
                current = (MyItem) parent.getItemAtPosition(position);
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent)
            {
            //do nothing
            }
        });

关于java - 从 Spinner OnItemSelectedListener 事件中获取先前选择的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31497712/

相关文章:

java - 使用 AJAX 与 Spring 和 Thymeleaf 发送字符串的正确方法是什么?状态 : 400

java - java子类的私有(private)final字段可以在 super 构造函数完成之前初始化吗?

java - 尝试为两个字符串列表获取随机数

java - 关于Android数据库

javascript - 在 Android 中使用 JavaScript 更改 Activity

构建 Java 程序帮助中的 Java 继承示例 - 找不到符号

java - Morphia:使用已弃用的配置选项对集合进行索引(复合键索引)

java - 不推荐在没有设置文件的情况下执行 Gradle : How to write a setting file and where to save

android - 如何在 Android Studio 中包含来自另一个模块的字符串

java - 字符串数组的减法