Анонимный класс, полученный из RequestListener - PullRequest
0 голосов
/ 28 марта 2020

Мой проект использовал Glide V3.7.0. Мне нужно добавить слушателя. Но в нем говорится, что анонимный класс получен из RequestListener. Я попытался обновить мою версию глиссады. Для этого я пошел в build.gradle: app и просто изменил номер версии с 3.7.0 на 4.8.0 и выполнил синхронизацию Gradle c. Но это не помогло. Также попытался изменить Glide.with на GlideApp.with, но он даже не распознает это ключевое слово ...

Glide.with(getApplicationContext())
                    .load(Uri.parse(url.get((int)(i))))

                    .listener(new RequestListener<Drawable>() {
                        @Override
                        public boolean onLoadFailed(Exception e, Object model, Target<Drawable> target, boolean isFirstResource) {

                            return false; // important to return false so the error placeholder can be placed
                        }

                        @Override
                        public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, boolean isFromMemoryCache, boolean isFirstResource) {

                            return false;
                        }
                    })

                    .into(IMGS[i]);

Я новичок в Android Development. Пожалуйста, помогите.

1 Ответ

1 голос
/ 28 марта 2020

Простое исправление: метод 1

Чтобы исправить эту ошибку, просто наведите курсор мыши на новую строку RequestListener () и нажмите [alt + enter ] вы увидите подсказку и из этого выберите Методы реализации.

Он восстановит методы для вас .... и удалит старые методы

Метод 2

Измените свою версию глидера в Gradle. Используйте эту две зависимости

 annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
 implementation 'com.github.bumptech.glide:glide:4.9.0'

и замените ваш код следующим кодом

Glide.with(getApplicationContext())
            .load(Uri.parse(url.get((int)(i))))
            .listener(new RequestListener<Drawable>() {

                @Override
                public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                    return false;
                }

                @Override
                public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                    return false;
                }


            })

            .into(IMGS[i]);

Я рекомендую попробовать 1-й способ ... это наиболее распространенные проблемы, с которыми вы сталкиваетесь при разработке

...