Библиотека подкачки Android показывает пустой видоискатель, когда список пустAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Библиотека подкачки Android показывает пустой видоискатель, когда список пуст

Сообщение Anonymous »

Я использую библиотеку подкачки с recyclerView, и моя задача — показывать пустой viewHolder, когда я получаю пустой arrayList с сервера.

Я пытался проверить, что список пуст или нет, но когда я получаю ответ, он вызывает метод Observer 2 раза (первый раз пустой список, второй раз реальный список), после того, как я использую swipeRefresh, класс DataSource отправляет пустой список, поскольку тот же список уже есть в кеше. Кроме того, у меня есть нумерация страниц, и проверить размер набора данных сложно, так как таких случаев много.

Код: Выделить всё

/**
* Simple Adapter used to show list of Appeals with pagination
*/
class MyAppealsAdapter : PagedListAdapter(diffCallBack) {

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
return AppealsViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.item_my_appeal, parent, false))
}

override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
when (holder) {
is AppealsViewHolder -> holder.bind(position)
}
}

inner class AppealsViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
@SuppressLint("SimpleDateFormat")
fun bind(position: Int) {
getItem(position)?.let { item ->
item.fields?.get(AppealKeyObj.K_SUB_ISSUE)?.let {
itemView.mTypeOfAppeal.text = it
}
}
}
}

companion object {
open var diffCallBack: DiffUtil.ItemCallback = object : DiffUtil.ItemCallback() {
override fun areItemsTheSame(oldItem: Appeal, newItem: Appeal): Boolean {
return oldItem.id === oldItem.id
}

override fun areContentsTheSame(oldItem: Appeal, newItem: Appeal): Boolean {
return oldItem == newItem
}
}
}
}

Пожалуйста, помогите показать пустой viewHolder, когда я получаю пустой arrayList

Изображение


Подробнее здесь: https://stackoverflow.com/questions/581 ... t-is-empty
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»