Проблема обнаружения компонента Spinner - PullRequest
1 голос
/ 23 марта 2011

перебирая компоненты View, работает следующий код:

if (child.getClass() == EditText.class) {
  ...
} else if (child.getClass() == TextView.class) {
  ...

но это не так:

} else if (child.getClass() == Spinner.class) {
  ...

В чем разница между классом Spinner и двумя другими?


Моя ошибка ... Я ранее проверял, был ли это объект ViewGroup, поэтому он никогда не достигал условия

Спасибо

Ответы [ 3 ]

2 голосов
/ 04 апреля 2011

Моя ошибка ... Я ранее проверял, был ли это объект ViewGroup, поэтому он никогда не достигал условия

1 голос
/ 23 марта 2011

Рассматривали ли вы использование

if(child instanceof EditText){}
else if(child instanceof TextView){}
else if(child instanceof Spinner){}
1 голос
/ 23 марта 2011
 if(child.getClass() instanceof Spinner.class){
 ...

edit:

Я нашел вопрос Stackoverflow, который объясняет это:

Любая причина, чтобы при генерации .equals предпочесть getClass (), а не instanceof.()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...