でSVG画像をロードし、私はImageViewのにPNG画像形式の描画可能をロードしようと、コードの下で、このImageViewのためのティントカラーを設定を⇒それはを働いている:アンドロイド - ImageViewのための色合いの色を設定する方法は、グライド
imageView1.setImageResource(R.drawable.pngFile);
imageView1.setColorFilter(getResources().getColor(R.color.colorAccent), android.graphics.PorterDuff.Mode.MULTIPLY);
Glideを使ってSVGイメージをImageViewに読み込み、その色合いを設定します。 しかし、imageViewにSVGイメージを正常に読み込んだ後、setColorFilter NOT WORKING。
私は以下のコードでグライドを使用して別のImageViewのにSVG画像を読み込むことができます:
// Setup RequestBuilder
requestBuilder = Glide.with(mActivity)
.using(Glide.buildStreamModelLoader(Uri.class, mActivity),
InputStream.class)
.from(Uri.class)
.as(SVG.class)
.transcode(new SvgDrawableTranscoder(), PictureDrawable.class)
.sourceEncoder(new StreamEncoder())
.cacheDecoder(new FileToStreamDecoder<SVG>(new SvgDecoder()))
.decoder(new SvgDecoder())
.placeholder(R.drawable.ic_facebook)
.error(R.drawable.ic_web)
.animate(android.R.anim.fade_in)
.listener(new SvgSoftwareLayerSetter<Uri>());
// Use RequestBuilder with uri
Uri uri = Uri.parse("http://upload.wikimedia.org/wikipedia/commons/e/e8/Svg_example3.svg");
requestBuilder
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.load(uri)
.into(imageView2);
今、私は(成功しimageView2にSVG画像をロードした後)mageView2の色合いの色を変更したい、私は以下試してみましたそれはをコードが、働いていない:
imageView2.setColorFilter(getResources().getColor(R.color.colorAccent), android.graphics.PorterDuff.Mode.MULTIPLY);
助けてください!このスレッドで
ImageView imageViewIcon = (ImageView) listItem.findViewById(R.id.imageViewIcon);
imageViewIcon.setColorFilter(getContext().getResources().getColor(R.color.blue));
詳細は、それは可能です:あなたは、クラスを変更しようとすることができ
android:tint="@color/colorAccent"
他
: 本当にありがとうございました
を使用して使用することができます。しかし、私がglideを使ってimageViewにSVGイメージを読み込んだとき、それは動作していません。助けてください! – Sonzero