diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java index f7f69cc940..70a68303ed 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/glide/SkinAbleBitmapTarget.java @@ -7,9 +7,14 @@ import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.bumptech.glide.load.Transformation; +import com.bumptech.glide.load.engine.Resource; +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPoolAdapter; +import com.bumptech.glide.load.resource.bitmap.BitmapResource; import com.bumptech.glide.request.RequestOptions; import com.bumptech.glide.request.target.SimpleTarget; import com.bumptech.glide.request.transition.Transition; +import com.mogo.commons.AbsMogoApplication; public /** @@ -33,7 +38,15 @@ class SkinAbleBitmapTarget extends SimpleTarget< Bitmap > { public void onResourceReady( @NonNull Bitmap resource, @Nullable Transition< ? super Bitmap > transition ) { try { mTarget.setImageResource( 0 ); - mTarget.setImageBitmap( resource ); + if(mOptions.getTransformations().containsKey(Bitmap.class)) { + Transformation t = (Transformation) mOptions.getTransformations().get(Bitmap.class); + BitmapResource r = BitmapResource.obtain(resource, new BitmapPoolAdapter()); + Resource r2 = t.transform(AbsMogoApplication.getApp(), r, resource.getWidth(), + resource.getHeight()); + mTarget.setImageBitmap(r2.get()); + }else { + mTarget.setImageBitmap(resource); + } } catch( Exception e ){ e.printStackTrace(); } diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index bf2ac37b46..c93701df86 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -17,6 +17,7 @@ import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintSet; import com.alibaba.android.arouter.launcher.ARouter; +import com.bumptech.glide.request.RequestOptions; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.mvp.MvpFragment; @@ -32,6 +33,7 @@ import com.mogo.map.navi.MogoTraffic; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.module.common.dialog.WMDialog; +import com.mogo.module.common.glide.SkinAbleBitmapTarget; import com.mogo.module.common.map.CustomNaviInterrupter; import com.mogo.module.common.map.MapCenterPointStrategy; import com.mogo.module.common.map.Scene; @@ -540,7 +542,9 @@ public class EntranceFragment extends MvpFragment