检测 Spinner 组件时出现问题
Posted
技术标签:
【中文标题】检测 Spinner 组件时出现问题【英文标题】:Problem detecting Spinner component 【发布时间】:2011-07-21 12:24:38 【问题描述】:遍历视图的组件,以下代码可以工作:
if (child.getClass() == EditText.class)
...
else if (child.getClass() == TextView.class)
...
但这不是:
else if (child.getClass() == Spinner.class)
...
Spinner 类和其他两个有什么区别?
我的错误......我之前在检查它是否是 ViewGroup 对象,所以它从未达到条件
谢谢
【问题讨论】:
考虑使用 instanceof。它将支持子类。 【参考方案1】:我的错误...我之前在检查它是否是 ViewGroup 对象,所以它从未达到条件
【讨论】:
【参考方案2】:你考虑过使用
if(child instanceof EditText)
else if(child instanceof TextView)
else if(child instanceof Spinner)
【讨论】:
【参考方案3】: if(child.getClass() instanceof Spinner.class)
...
编辑:
我找到解释它的 *** 问题:
Any reason to prefer getClass() over instanceof when generating .equals()?
【讨论】:
以上是关于检测 Spinner 组件时出现问题的主要内容,如果未能解决你的问题,请参考以下文章