Остановить выполнение функции, если макет равен mdpi/ldpi?

Я разрабатываю приложение для Android, и я борюсь с различными макетами. В основном, я показываю календарь и TextView, когда на портрете, который обновляет свое значение каждый раз, когда щелкает плитку из календаря. Я не хочу, чтобы TextView больше отображался в land-mdpi. Я создал макет для ландшафта mdpi, в котором я удалил опцию TextView, но я думаю, что я должен сделать это программно, поскольку теперь появляется ошибка каждый раз, когда я пытаюсь щелкнуть плитку на устройстве с такими спецификациями (функция все еще активен и пытается обновить TextView - который больше не существует в этом формате макета). Как мне это сделать?

1 ответ

Решение

Когда вы получите TextView ссылка из вашей иерархии просмотра с помощью findViewById(), вы получите null если вид не там. Так что просто используйте что-то вроде

TextView tv = (TextView)someView.findViewById(R.id.yourTextViewId);
if (tv != null) {
  // The TextView is there and can be used
} else {
  // The TextView isn't there
}
Другие вопросы по тегам