【问题标题】:Why can OnItemClickListener not work with a Spinner?为什么 OnItemClickListener 不能与 Spinner 一起使用?
【发布时间】:2015-04-26 11:25:46
【问题描述】:

我想知道您是否有特定原因无法在 Android 中将OnItemClickListener 与微调器一起使用?浏览较早的帖子(setOnItemClickListener Not Works with SpinnerI have an error: setOnItemClickListener cannot be used with a spinner, what is wrong?)似乎人们甚至不理会OnItemClickListener,而是直接使用OnItemSelectedListener。如果 Eclipse 永远无法工作,为什么 Eclipse 会提供 OnItemClickListener 作为微调器的选项?

一些背景- 我并不太担心我使用哪种方法。一旦用户从微调器中选择了一个项目,我想让第二个微调器可见并根据第一个微调器中选择的选项从数据库中填充它。现在,当我使用OnItemSelectedListener 时,第二个微调器立即设置为可见。有解决办法吗?

【问题讨论】:

  • 关于 Eclipse 的问题,我不知道;关于您的两个微调器的编程问题,您可能需要添加一些细节和一些代码。

标签: android spinner onitemclick onitemselectedlistener


【解决方案1】:

如果它永远无法工作,为什么 Eclipse 将 OnItemClickListener 作为微调器的一个选项?

因为所有扩展 AdapterView 的东西都有 setOnItemClickListener()。仅仅因为某些子类忽略它并不意味着 setter 会神奇地消失。

有解决办法吗?

没有解决方法,因为没有问题,因为它完全按照您所说的去做(“我想让第二个微调器可见,并根据在第一个微调器”)。如果有数据可供选择,Spinner总是有选择。因此,您的第二个 Spinner 应该始终可见,因为它“基于第一个微调器中选择的选项”,并且将始终有一个“在第一个微调器中选择的选项”。

听起来你真正想要的是只有第二个Spinner 对第一个Spinner 中的特定选择可见,在那里你设置了第一个Spinner 有一些选择,在商业术语(如果不是技术术语)中,意味着“没有选择”。欢迎您这样做,但随后您必须实现处理此问题的逻辑,当在第一个 Spinner 中选择适当的值时,仅显示第二个 Spinner

【讨论】:

猜你喜欢
  • 2012-04-11
  • 1970-01-01
  • 1970-01-01
  • 2018-03-09
  • 2021-06-14
  • 2012-10-09
  • 2020-03-18
  • 2017-11-21
  • 2019-04-11
相关资源
最近更新 更多