Glide не разрешает его метод

Сегодня я пытаюсь использовать загрузчик изображений Glide в своем приложении для Android, используя этот метод, с которым я столкнулся, и не разрешающий проблему.

Glide
     .with(this)
     .load(R.drawable.image_default_profile_picture)
     .into(mUserImage);

Этот код работает очень хорошо. Но когда я пытаюсь это сделать

Glide
     .with(this)
     .load(R.drawable.image_default_profile_picture)
     .placeholder(R.mipmap.ic_launcher)
     .fitCenter()
     .into(mUserImage);

Тогда это высказывание не может разрешить метод fitCenter(), placeholder. Что мне не хватает?

Ответ 1

Кажется, что в обновленной библиотеке есть какие-то проблемы. Добавьте .apply(new RequestOptions(), чтобы продолжить работу с последней версией.

CODE

Glide
 .with(this)
 .load(R.drawable.image_default_profile_picture)
 .apply(new RequestOptions()
 .placeholder(R.mipmap.ic_launcher)
 .fitCenter()
 .into(mUserImage);

Ответ 2

Вы все еще можете использовать .placeholder() с последней версией Glide, вам просто нужно добавить ее как прикладную RequestOption в цепочке методов, т.е.

Glide.with(this)
     .load(floorplanUrl)
     .apply(new RequestOptions()
           .placeholder(R.drawable.floorplan_unavailable))
     .into(floorplanImageView);

Ответ 3

Если вы используете зависимости пакета Glide compile 'com.github.bumptech.glide:glide:3.7.0', чем использование ниже кода

Glide
    .with(your_context)
    .load(image_url)
    .centerCrop()
    .placeholder(R.drawable.image_loading)
    .error(R.drawable.image_error)
    .into(imageView);

Примечание: Как в doc Круговые фотографии: CircleImageView/CircularImageView/RoundedImageView являются Известные проблемы с TransitionDrawable (.crossFade() с .thumbnail() или .placeholder()) и анимированные GIF файлы, используйте BitmapTransformation (.circleCrop() будет доступно в версии 4) или .dontAnimate(), чтобы устранить проблему.

Последняя версия обновления compile 'com.github.bumptech.glide:glide:4.1.1' или выше, чем использование ниже кода

Glide.with(your_context)
     .load(url)
     .apply(new RequestOptions()
                .placeholder(R.mipmap.ic_loading_image)
                .centerCrop()
                .dontAnimate()
                .dontTransform())
                .into(imageView);

Если вы хотите загрузить GIF File в Glide с помощью compile 'com.github.bumptech.glide:glide:3.7.0', чем использовать метод .asGif() после .load()

Glide
    .with(your_context)
    .load(image_url)
    .asGif()
    .into(imageView);

Если вы используете compile 'com.github.bumptech.glide:glide:4.1.1' или более высокие (последние) зависимости, чем,

Glide
    .with(your_context)
    .asGif()
    .load(image_url)
    .into(imageView);

Примечание.. Если вы используете glide:glide:4.1.1 или более высокую версию, чем нет необходимости использовать метод .asGif() для загрузки файла GIF, он будет загрузить GIF File автоматически

См. последнюю версию glide, исправления ошибок, функции

Ответ 4

Для использования fitCenter() и других изменений типа шкалы с версией Glide, начиная с версии 4.0, вам нужно включить специальный класс в ваше приложение.

import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;

@GlideModule
public class MyAppGlideModule extends AppGlideModule {
}

После этого перестройте проект, и вы можете начать использовать Glide таким образом

GlideApp.with(imageView)
    .load("...")
    .fitCenter()
    .into(imageView);

Документация

Ответ 5

Если вы все еще хотите использовать новейшую библиотеку 'com.github.bumptech.glide:glide:4.0.0-RC1', Официальная страница Github предлагает следующее:

Круглые картинки: CircleImageView/CircularImageView/RoundedImageView - это Известно, что есть проблемы с TransitionDrawable (.crossFade() с .thumbnail() или .placeholder()) и анимированные GIF файлы, используйте BitmapTransformation (.circleCrop() будет доступно в версии 4) или .dontAnimate(), чтобы устранить проблему.

В противном случае используйте следующую версию библиотеки:

compile 'com.github.bumptech.glide:glide:3.7.0'

Ответ 6

скомпилируйте эту библиотеку: -

compile 'com.github.bumptech.glide:glide:3.7.0'