Android - 如何在不触发setOnItemSelectedListener的情况下更改微调器值

时间:2010-11-11 11:03:16

标签: android android-activity spinner choice

我有一个微调器及其适配器。 我有一个自定义的列表和一个微调器视图。

可以通过两种方式修改微调器的值: - 由用户选择 - programaticaly

当用户做出选择时,并且只有当此选择与所选值不同时,我可能(或不)想要显示第二个活动以使他选择完成值。

如果用户取消了第二个活动,我希望旋转器选择不被验证并保持其原始位置。

但是我不想抓住或者能够识别出程序化改变,而不是用无用的选择来惹恼用户。

但我找不到任何办法。

你有什么想法吗?

我能做的最好的事情是: - 记住我的类属性中微调器的值, - 触发器和itemSelected事件,并将选定的值与记住的值进行比较, - 清空微调器视图以使新选项不可见(因为它可能不完整而缺少第二选择) - 完成第二项活动 - 取决于第二个活动的结果,强制旋转器中的旧值或使微调器值可见并且此时间完成

这样做,并且为了过滤用户点击,我可能总是强制将旧的微调器值记忆到我要放在programaticaly中的新的微调器值。如果我不这样做,会触发事件,我无法阻止用户完成第二项活动。

你认为有更好的办法来做我的事吗?

感谢您的帮助。

奥利弗

1 个答案:

答案 0 :(得分:1)

我已经回答了类似的问题。所以请检查一下:Android Spinner selection

相关问题