Android Glide从网络加载图片 点击可放大查看效果

前言

通过url来获取bitmap 然后通过glide工具来加载bitmap 来实现图片点击放大

废话不多说,直接上代码

代码

java 复制代码
String netPhoto = "xxx";
  //从网络加载缓存
 try {
    Glide.with(TakePhotoSurveyActivity.this).asBitmap().load(photoDesign)
    .into(new CustomTarget<Bitmap>() {
    @SuppressLint("ClickableViewAccessibility")
    @Override
    public void onResourceReady(@NonNull Bitmap resource, 
    @Nullable Transition<? super Bitmap> transition) {
            runOnUiThread(() -> bigImageLoaderLocal(resource));
    }
     @Override
   public void onLoadCleared(@Nullable Drawable placeholder) {

    }
   });

} catch (Exception e) {
    e.printStackTrace();
}

点击放大图片

java 复制代码
    /**
     * 点击放大本地图片
     *
     * @param bitmap bitmap
     */
    private void bigImageLoaderLocal(Bitmap bitmap) {
        Dialog dialog = new Dialog(this);
        ImageView image = new ImageView(this);
        image.setImageBitmap(bitmap);
        dialog.setContentView(image);
        //将dialog周围的白块设置为透明
        if (dialog.getWindow() != null) {
            dialog.getWindow().setBackgroundDrawableResource
            (android.R.color.transparent);
            //显示
            dialog.show();
            //点击图片取消
            image.setOnClickListener(v -> dialog.cancel());
        }
    }
相关推荐
杉氧19 分钟前
原生交互:如何在 Flutter 中嵌入 Android/iOS 原生组件并解决手势冲突
android·flutter·dart
Android打工仔36 分钟前
Continuation 的链式关系 —— 一个 suspend 函数如何把结果交还给调用者?
android·kotlin
hunterandroid37 分钟前
[Android 从零到一] Kotlin Channel 与复杂并发场景:从生产者-消费者到结构化并发治理
android
FlightYe1 小时前
linux系统编程(八):阻塞与非阻塞IO对比
android·linux·运维·服务器·github·vim
恋猫de小郭2 小时前
Flutter iOS Deep Link 为什么会突然失效:一系列难以言喻的问题
android·前端·flutter
Kapaseker2 小时前
小白都看得懂的 Skill 教程 - 初识 Skill
android·kotlin·vibecoding
神奇小梵3 小时前
安全和开发的需要了解的知识————下载内容的安全,和下载内容如何运行
android·windows·安全·个人开发
2501_915909063 小时前
iOS 证书创建与管理 类型限制 p12 密码与云备份实操
android·ios·小程序·https·uni-app·iphone·webview
黄毛火烧雪下3 小时前
Service 推送 / Stub·Proxy 对调
android
zhangphil3 小时前
Android Coil 3 ImageRequest.Builder error() 和 fallback()异同
android·kotlin