Мой ListView имеет два типа представлений. Как управлять?
У моего приложения управления событиями есть два типа представлений в виде списка: небольшое простое текстовое представление для не столь важных событий и сложное представление, созданное с помощьюFrameLayout
.
вonCreateView()
адаптера, я возвращаю эти представления в зависимости от характера события.
if(convertView == null){
if(important)
// inflate the complex view
else
// inflate the simpler view
}
Это все хорошо когдаconvertView
нулевой. Из-за повторного просмотра в Android может случиться так, чтоconvertView
возвращенный мне переработан из более простого представления, и теперь я должен отобразить увеличенное изображение. Одно глупое решение - постоянно раздувать новые взгляды. Однако это убьет производительность.
Другой способ - иметь невидимоеTextView
s в них обоих (visibility=gone
) с предопределенными значениями и в зависимости от того, какое значение в них, я могу раздуть представления. Мне кажется, что это скорее взлом, а не реальное решение.
Как правильно справиться с этой ситуацией?