# Android图片处理–缩放 站点:答源(https://www.dandroid.cn/) 原文:https://www.dandroid.cn/archives/21348 Canonical:https://www.dandroid.cn/archives/21348 作者:admin 发布日期:2023-09-26 最后更新:2023-09-26 16:06 分类:技术方案 内容类型:post 说明:本页是原文的纯文本镜像,供大模型与检索器完整读取;不含导航、广告、付费框。引用请以上方「原文」链接为准。 ## 正文 PS:在开发中我们会遇到一些图片处理问题,比如说缓存图片了、限制图片大小了、查看图片了等。上一篇文章介绍了图片的全景效果查看,今天介绍一个图片缩放,我们如果有时间的话,可以自己写一个属于自己的库,里面会用到view的按压、事件分发、手势等一些知识,如果没有时间或者不会其他的方法,不妨来看看这个PhotoView。这是一个图片缩放库,对于这样的还有GitView等,下面我就介绍一些用法。 功能: 正常加载图片 双击放大 手势随意缩放 随意拖动查看图片每一个角落 结合其他设置可实现翻转 1:本地图片加载 第一种方法: //本地加载方法一 // 设置图片 Drawable bitmap = getResources().getDrawable(R.mipmap.ic_launcher); loc.setImageDrawable(bitmap); // 连接在photoview中 PhotoViewAttacher mAttacher = new PhotoViewAttacher(loc); mAttacher.update();//更新 第二种 //本地方法加载二 PhotoViewAttacher mAttacher; mAttacher = new PhotoViewAttacher(loc); iv.setImageBitmap(bitmap); Glide.with(this).load(R.mipmap.ic_launcher).asBitmap().into(loc); mAttacher.update(); 2:网络图片加载 对于网络也是可以用ImageView和PhotoView两种 把ImageView或者PhotoView的对象名直接添加到display中就OK 了。 //加载网络图片 ImageLoader loader= ImageLoader.getInstance(); loader.init(ImageLoaderConfiguration.createDefault(ImageTest.this));//loader初始化 loader.displayImage("https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1529211252&di=1414331e22239ecb5730cbbd0f3793eb&src=http://pic154.nipic.com/file/20180114/26629113_090329120799_2.jpg",loc);//展示图片 下面我们可以看一下源码,其实他也是继承了ImageView /** * Adds display image task to execution pool. Image will be set to ImageView when it's turn. * Default {@linkplain DisplayImageOptions display image options} from {@linkplain ImageLoaderConfiguration * configuration} will be used. * NOTE: {@link #init(ImageLoaderConfiguration)} method must be called before this method call * * @param uri Image URI (i.e. "http://site.com/image.png", "file:///mnt/sdcard/image.png") * @param imageView {@link ImageView} which should display image * @throws IllegalStateException if {@link #init(ImageLoaderConfiguration)} method wasn't called before * @throws IllegalArgumentException if passed imageView is null */ public void displayImage(String uri, ImageView imageView) { displayImage(uri, new ImageViewAware(imageView), null, null, null); } --- 由 答源 DAN 底座 1.4.1 生成 · 2026-11-13T07:59:31+00:00