遍历View的组件,以下代码可以正常工作:
if (child.getClass() == EditText.class) {
...
} else if (child.getClass() == TextView.class) {
...
但这不是:
} else if (child.getClass() == Spinner.class) {
...
Spinner类与另外两个类有什么区别?
我的错误......我之前检查过它是否是一个ViewGroup对象所以它从未达到过这种情况
由于
答案 0 :(得分:2)
我的错误......我之前检查过它是否是一个ViewGroup对象,所以它永远不会达到条件
答案 1 :(得分:1)
if(child.getClass() instanceof Spinner.class){
...
修改强>
我找到了解释它的Stackoverflow问题:
Any reason to prefer getClass() over instanceof when generating .equals()?
答案 2 :(得分:1)
您是否考虑过使用
if(child instanceof EditText){}
else if(child instanceof TextView){}
else if(child instanceof Spinner){}