PagingSample с использованием AndroidX - PullRequest
0 голосов
/ 23 сентября 2018

Я попытался реорганизовать PagingSample (компоненты Google для архитектуры Android) в AndroidX (AndroidStudio 3.3.0-alpha11, kotlin_plugin = 1.3.0-rc-57)

Сборка Gradle была выполнена без ошибок.Отладка выдает ошибку:

app / build / tmp / kapt3 / stubs / debug /../ pagingsample / CheeseAdapter.java: 33: ошибка: не удается найти символ частную статическую финальную androidx.recyclerview.widget.DiffUtil.ItemCallback diffCallback = null;Символ ^: местоположение класса T: класс CheeseAdapter

1 Ответ

0 голосов
/ 23 сентября 2018

Ответ прост:

import android.view.ViewGroup
import androidx.paging.PagedListAdapter
import androidx.recyclerview.widget.DiffUtil

class CheeseAdapter : PagedListAdapter<Cheese, CheeseViewHolder>(/*diffCallback)*/
object : DiffUtil.ItemCallback<Cheese>() {
    override fun areItemsTheSame(oldItem: Cheese, newItem: Cheese): Boolean =
        oldItem.id == newItem.id

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

override fun onBindViewHolder(holder: CheeseViewHolder, position: Int) {
    holder.bindTo(getItem(position))
}

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CheeseViewHolder =
        CheeseViewHolder(parent)

}
...