2013-06-25 3 views
1

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

ответ

4

Когда вы получите ссылку 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 
}