Пройдя через множество форумов по той же проблеме, я все еще не смог устранить ошибку GlideApp. Он говорит, что это не может быть решено. Вот скриншот:
Вот класс java, чтобы использовать детали сверху
Мой файл build.gradle уже содержит:
compile 'com.github.bumptech.glide:glide:4.1.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.1.1'
Оба, а также у меня есть класс с приведенным ниже кодом:
import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;
@GlideModule
public final class CustomAppGlideModule extends AppGlideModule {
}
И я использую это, чтобы запросить:
Когда я использую Glide.with, появляется сообщение об ошибке
Но все же это не решает проблемы.
Тогда это дает мне ошибку "с: если я использовал только Glide.
проверь мой ответ
@Quicklearner Пожалуйста, убедитесь, что я включил все детали своей проблемы




Попробуйте с
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
@GlideModule
public class FlickrGlideModule extends AppGlideModule {
@Override
public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) {
super.applyOptions(context, builder);
builder.setDefaultRequestOptions(new RequestOptions().format(DecodeFormat.PREFER_ARGB_8888));
}
@Override
public void registerComponents(@NonNull Context context, @NonNull Glide glide,
@NonNull Registry registry) {
registry.append(Photo.class, InputStream.class, new FlickrModelLoader.Factory());
}
// Disable manifest parsing to avoid adding similar modules twice.
@Override
public boolean isManifestParsingEnabled() {
return false;
}
}
К вашему сведению
Ваш метод loadImage будет
public static void loadImage(Context ctx,RequestOptions glideRequests, String url, ImageView imageView) {
loadImage(ctx,glideRequests, url, imageView, DiskCacheStrategy.ALL);
}
public static void loadImage(Context ctx,RequestOptions glideRequests, String url, ImageView imageView, DiskCacheStrategy diskCacheStrategy) {
Glide.with(ctx)
.applyDefaultRequestOptions(requestOptions.placeholder(R.drawable.ic_stub).error(R.drawable.ic_stub))
.asBitmap()
.load(url).into(imageView);
}
потом
ImageUtil.loadImage(context,options,obj.getPhotoUrl(),avatarImageView);
Спасибо за такую приятную информацию, но я все еще не могу решить проблему. Проект почти завершен, но я не могу решить только эту ошибку, вот весь проект, в котором модуль GlideApp находится внутри util github.com/BlueYeti1881/Physicscircle
@Inellij Пожалуйста, проверьте, что я добавил все детали и отредактировал свой вопрос.
поэтому, если я использую GlideApp, он показывает ошибку, а когда я использую Glide. с ним отображается ошибка ... не могли бы вы помочь мне. если вам нужно, у меня открыт teamviewer ...., я хотел бы поделиться с вами своим компьютером .. !!
да, я добавил этот вопрос и отредактировал его в моем втором изображении. Первое изображение создает запрос, а второе изображение в классе imageutil, где реализован метод. пожалуйста, проверьте
@BirNepali понял суть. Добавьте первый параметр RequestOptions requestOptions
где я должен добавить это ... не могли бы вы мне помочь ... следует ли мне заменить GlideRequests glideRequests на RequestOptions requestOptions во втором изображении или иначе?
@BirNepali Пожалуйста, проверьте мой отредактированный ответ. Надеюсь, это сработает.
Спасибо за вашу любезную помощь, вот ошибка после того, как я использовал то, чем вы поделились со мной ibb.co/ndR34pibb.co/eF5fjp
@BirNepali omg! почему вы удаляете RequestOptions options = new RequestOptions();
огромный респект вам ... почти здесь, и да, я забыл добавить опцию запроса, и я добавил в свой класс позже здесь снимки экрана до и теперь ibb.co/kp47fU и ibb.co/eX1QZp. Теперь единственная ошибка, которую я получаю, - это слушатель. Как я могу решить это .... !! у вас есть мой голос, а также полезный голос.
@BirNepali Вы можете удалить этот метод. Не используя. public static void loadImage(GlideRequests glideRequests, String url, ImageView imageView, RequestListener<Drawable> listener) { glideRequests.load(url) .error(R.drawable.ic_stub) .listener(listener) .diskCacheStrategy(DiskCacheStrategy.DATA) .into(imageView); }
извините за поздний ответ ... да, вы заслуживаете голоса ... Я обязательно сделаю это ... одно последнее препятствие ... Мне удалось устранить все ошибки, кроме некоторых свойств, которые я не могу решить, это diskCacheStrategy (DiskCacheStrategy.None) и fitCenter () и CenterCrop () и .skipMemoryCache (true) ... следует ли мне их удалить, или есть ли в любом случае, что в Bitmap мы можем их разрешить ... Я искал в Интернете, но не нашел ничего, что могло бы мне помочь. вот изображение ibb.co/d7G9C9
@BirNepali Вы должны добавить android:scaleType = "fitCenter" в свой раздел xml Imageview или public static void loadImage(Context ctx,RequestOptions glideRequests, String url, ImageView imageView, DiskCacheStrategy diskCacheStrategy) { glideRequests.fitCenter(); Glide.with(ctx)......
Попробуй это
Импортируйте Glide, добавив это в gradle
compile 'com.github.bumptech.glide:glide:3.8.0'
Затем используйте этот код
Glide.with(context)
.load(url)
.placeholder(R.drawable.ic_male)
.error(R.drawable.imagenotfound)
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
// log exception
Log.e("TAG", handle error case", e);
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
Log.e("TAG", handle success case here", e);
return false;
}
})
.into(avatarImageView);
Я отредактировал свой вопрос, где у меня есть другой класс для получения запроса. всякий раз, когда я меняю какую-либо переменную, следующий класс просит меня изменить подпись класса. Я добавил выше свой вопрос.
мой ответ тебе помог?
нет ... он все еще показывает ошибку ... !! не могли бы вы помочь мне из Teamviewr .. Я хотел бы поделиться с вами своим компьютером .. !! Проект почти готов, но не решена только эта проблема .. Буду вам очень признателен.
Я не могу использовать teamviewer прямо сейчас, дорогая, но позже, в любом случае, вы можете поделиться своей ошибкой здесь
вы просто хотите показать изображение с помощью скольжения, верно?
да ... но у меня также есть отдельный класс, в котором я обрабатываю запрос из другого класса. Я также включил этот класс во второе изображение выше.
я понял, вам не нужно использовать метод ImageUtil.loadImage, вы можете легко использовать Glide.with (context) .load (url) .into (avatarImageView);
Позвольте нам продолжить обсуждение в чате.
Похоже, идет большая дискуссия. Не волнуйся. У меня есть решение.
Следуйте шагам:
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
@GlideModule
public class SampleGlideModule extends AppGlideModule {
@Override
public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) {
super.applyOptions(context, builder);
}
}
Теперь вы можете нажать CTRL+F9 ИЛИ выбрать опцию Make Project в меню Build.
Он автоматически сгенерирует один файл (Вы можете увидеть, нажав CTRL и наведя курсор на ClassName в File.)
final class GeneratedAppGlideModuleImpl extends GeneratedAppGlideModule {
private final SampleGlideModule appGlideModule;
....
}
Теперь вы можете очень легко использовать класс GlideApp.
Не стесняйтесь обращаться ко мне, если у вас возникнут какие-либо ошибки.
Надеюсь, это поможет вам. Я как всегда люблю Glide. <3
juse Glide только вместо GlideApp