Я получаю флаг стран, используя API RestFul, изображения в формате svg, поэтому glide не поддерживает формат svg.
Glide.with(context)
.load(countriesListObj.getFlag())
.apply(RequestOptions.circleCropTransform())
.into(holder.countryFlag);
Я нашел другие решения для svg
GlideToVectorYou
.init()
.with(this)
.withListener(new GlideToVectorYouListener() {
@Override
public void onLoadFailed() {
Toast.makeText(context, "Load failed", Toast.LENGTH_SHORT).show()
}
@Override
public void onResourceReady() {
Toast.makeText(context, "Image ready", Toast.LENGTH_SHORT).show()
}
})
.setPlaceHolder(placeholderLoading, placeholderError)
.load(IMAGE_URL, imageview);
вот еще один способ
SvgLoader.pluck()
.with(activity))
.setPlaceHolder(R.mipmap.ic_launcher, R.mipmap.ic_launcher)
.load("http://www.clker.com/cliparts/u/Z/2/b/a/6/android-toy-h.svg", image);
Я тоже нашел другой, но каждый метод проходит Активность
(. С (активность)))
и в глиссаде мы передаем контекст.Я преобразую контекст в активность как
(Activity) context;
, но он показывает ошибку
java.lang.NoSuchMethodError: Нет статического метода buildStreamModelLoader (Ljava / lang / Class; Landroid / content /Контекст;) Lcom / bumptech / скольжения / нагрузки / модель / ModelLoader;в классе Lcom / Bumptech / Glide / Glide;или его суперклассы (объявление 'com.bumptech.glide.Glide' появляется в /data/app/com.abc.online-NgaithsDmCnw4eJKDV789==/split_lib_dependencies_apk.apk)