2013-06-20 4 views
0

У меня есть ListActivity, который отображает данные пользователя. В первый раз, когда пользователь загружает список, он пуст, поэтому я использую функцию «пустой вид», давая представление ID android.R.id.empty. Это представление не просто сообщение «нет элементов»: это своеобразное руководство по быстрому запуску, показывающее пользователю, как создавать элементы данных, которые будут отображаться в списке.ViewStub как пустой список ListActivity

Поскольку руководство по быстрому запуску представляет собой довольно сложную компоновку с большим количеством изображений, я не хочу накладных расходов на ее загрузку и хранение в памяти, в общем случае, когда список не пуст. По этой причине я хотел бы «спрятать» его за ViewStub.

Пока активность загружается, отобразится ли «пустой» вид, загрузив ViewStub? Адаптер списка устанавливается в onCreate, перед вызовом setContentView, так что это до отображения списка. Если это будет сделано, есть ли способ избежать этого, не заменив полностью функциональность «пустой вид»? Очевидно, что в соответствующее время можно было бы изменить видимость, но я сделал это таким образом, чтобы уменьшить количество кода в моей деятельности.

ответ

0

Это всегда хорошо в программировании на Android, чтобы делать такие вещи, чтобы делать это вручную. Вы можете просто получить ViewStub вручную для переменной и раздуть ее, если список на самом деле пустой список. Это совсем не сложно. Вы должны посмотреть размер адаптера только в том случае, если ваш список загружен полностью. Если размер адаптера равен 0, вы можете получить ViewStub и раздуть его.

+1

Если это всегда полезно сделать вручную, почему у ListView есть функция «пустой вид»? –

+0

Я должен был сказать, что это хорошо сделать вручную, если это сложнее, чем поведение по умолчанию. – tasomaniac

 Смежные вопросы

  • Нет связанных вопросов^_^