web-dev-qa-db-ja.com

グライドはその方法を解決しません

今日、これを使用している間にAndroidアプリケーションでGlideイメージローダーを使用しようとしていますが、問題を解決しない方法に直面していました。

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を解決できません。私は何が欠けていますか?

51
user3528954

更新されたライブラリには問題があるようです。 .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);
99
Pehlaj

最新バージョンのGlideで.placeholder()を引き続き使用できます。メソッドチェーンに適用されたRequestOptionとして追加するだけです。

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

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 と同様Round Pictures:CircleImageView/CircularImageView/RoundedImageViewはTransitionDrawable(.crossFade()with .thumbnail( )または.placeholder())とアニメーションGIF、BitmapTransformation(.circleCrop()はv4で使用可能)または.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 FileGlidename__にロードする場合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()GIFname__ファイルをロードするメソッドは、GIF Fileを自動的にロードします

グライド、バグ修正、機能の最新バージョンをご覧ください

37
ND1010_

fitCenter()およびその他のスケールタイプの変更をv4.0以降のGlideバージョンで使用するには、アプリに特別なクラスを含める必要があります。

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);

ドキュメント

15
Pavel Ismailov

グライドバージョン:4.8.0

Glide.with(this)
        .load("https://media.giphy.com/media/98uBZTzlXMhkk/giphy.gif")
        .apply(new RequestOptions()
                .placeholder(R.drawable.placeholder)
                .error(R.drawable.error)
                .centerCrop()
                .fitCenter())
        .into(imageView);
4
shellhub

それでも最新のライブラリ'com.github.bumptech.glide:glide:4.0.0-RC1'を使用したい場合は、 公式のGithubページ は以下を提案します。

丸い画像:CircleImageView/CircularImageView/RoundedImageViewは、TransitionDrawable(。crossFade()with .thumbnail()または.placeholder())で問題があることがわかっています。アニメーションGIFでは、BitmapTransformationを使用します(。circleCrop()はv4で使用可能になります)または。dontAnimate()問題を修正します。

それ以外の場合は、次のライブラリバージョンを使用します。

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