Установите 2 разных изображения для двух разных пустых списков в одном приложении
На самом деле я могу использовать пустой просмотр списка в моем приложении, когда у меня есть один список. Но я сталкиваюсь с двумя разными списками, использующими один и тот же xml. Теперь, как мне поступить, чтобы получить 2 разных изображения в моем другом списке, когда они Пустые,
3 ответа
Если вы используете imageview с идентификатором android.R.id.empty.
тогда просто используйте это
ImageView image=(ImageView)findviewbyid(android.R.id.empty);
и установите желаемое изображение.
Да, Akki, это было почти правильно, с небольшими изменениями в моем XMl. Окончательный код уже здесь. Все, что мне нужно было использовать тот же текст, который описан в файле списка XML.
TextView tv=(TextView)findViewById(android.R.id.empty);
tv.setBackgroundResource(R.drawable.anniversary_reminder);
Установите видимость любого изображения, которое вы хотите VIEW.GONE, когда ваш список не пуст. Затем вы можете создать два разных изображения в макете. Сделайте так, чтобы они изначально были видны.
В методе onCreate проверьте список ArrayList, который вы используете для своего адаптера при загрузке списка, чтобы убедиться, что он пуст. Если оно не пустое, тогда установите видимость вашего изображения на VIEW.GONE. Затем все, что вам нужно сделать, это сделать эту же проверку всякий раз, когда есть удаления в списке. (потому что вы не можете получить пустой список, добавив больше записей) И всякий раз, когда вы добавляете список, установите видимость изображения на VIEW.VISIBLE. (в основном, где бы вы ни делали уведомление об изменении данных на адаптере)
Надеюсь, эта логика поможет!
ImageView emptyListImage1 = (ImageView) findViewById(R.layout.image1);
ImageView emptyListImage2 = (ImageView) findViewById(R.layout.image2);
emptyListImage1.setVisibility(VIEW.GONE);
emptyListImage1.setVisibility(VIEW.VISIBLE);