Не могу найти класс DiffCallback в компоненте Архитектура Android 1.1.1:

Недавно я обновил версию библиотеки поддержки android.arch в файле Gradle

 // ViewModel and LiveData
    implementation "android.arch.lifecycle:extensions:1.1.1"

    // alternatively, just ViewModel
    implementation "android.arch.lifecycle:viewmodel:1.1.1"

    // alternatively, just LiveData
    implementation "android.arch.lifecycle:livedata:1.1.1"
    annotationProcessor "android.arch.lifecycle:compiler:1.1.1"

    // Room (use 1.1.0-alpha1 for latest alpha)
    implementation "android.arch.persistence.room:runtime:1.0.0"
    annotationProcessor "android.arch.persistence.room:compiler:1.0.0"

    // Paging
    implementation "android.arch.paging:runtime:1.0.0-alpha7"

Теперь я заявил, что получаю эту ошибку

введите описание изображения здесь

2 ответа

Решение

Использовать DiffUtil.ItemCallback учебный класс:

 public static final DiffUtil.ItemCallback<User> DIFF_CALLBACK =
             new DiffUtil.ItemCallback<User>() {
     @Override
     public boolean areItemsTheSame(
             @NonNull User oldUser, @NonNull User newUser) {
             //..
     }
     @Override
     public boolean areContentsTheSame(
             @NonNull User oldUser, @NonNull User newUser) {
         //..
     }
 }

Вы также можете проверить DiffCallback учебный класс. Теперь этот класс переехал в recyclerview-v7 и это устарело.

Не уверен, какую версию вы использовали ранее, но из журнала изменений ( 1.0.0-alpha6, 27 февраля 2018 г.),

Классы переименованы и перенесены в recyclerview-v7:

  • DiffCallback -> DiffUtil.ItemCallback