使用自定義 Glide 目標滑動圓角影象
首先製作實用程式類或在類中使用此方法
public class UIUtils {
public static BitmapImageViewTarget getRoundedImageTarget(@NonNull final Context context, @NonNull final ImageView imageView,
final float radius) {
return new BitmapImageViewTarget(imageView) {
@Override
protected void setResource(final Bitmap resource) {
RoundedBitmapDrawable circularBitmapDrawable =
RoundedBitmapDrawableFactory.create(context.getResources(), resource);
circularBitmapDrawable.setCornerRadius(radius);
imageView.setImageDrawable(circularBitmapDrawable);
}
};
}
載入圖片:
Glide.with(context)
.load(imageUrl)
.asBitmap()
.into(UIUtils.getRoundedImageTarget(context, imageView, radius));
因為你使用 asBitmap()
,動畫將被刪除。你可以使用 animate()
方法在此處使用自己的動畫。
具有類似淡入預設 Glide 動畫的示例。
Glide.with(context)
.load(imageUrl)
.asBitmap()
.animate(R.anim.abc_fade_in)
.into(UIUtils.getRoundedImageTarget(context, imageView, radius));
請注意,此動畫是支援庫私有資源 - 不建議使用,因為它可以更改甚至刪除。
請注意,你還需要支援庫才能使用 RoundedBitmapDrawableFactory