Android 加载长图

后台返回的图片是长图,长度超过手机长度,我不行剪裁,于是在网上找了一些资料,在这里我吧这些分享出来,希望能帮助需要帮助的人。直接说明了:

1: 在build.gradle的dependencies里写上

implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.10.0'这个依赖

2:在xml里布局里写布局文件

 

3:我在下面的代码是加载单张图片

在xml文件里直接

在赋值区

RequestOptions myOptions = new RequestOptions();
Glide
        .with(mContext)
        .asFile()
        .load(data.data.detail.picture)
        .apply(myOptions)
        .into(new SimpleTarget() {
            @Override
            public void onResourceReady(File resource, Transition transition) {
                ivXiangqing.setImage(ImageSource.uri(Uri.fromFile(resource)));
            }
        });

load是加载图片的链接

4:我在这里是用 Glide加载版本号是4.3.1的,Glide在4.0版本做了一些更新,还是看代码吧,我在下面的代码是加载多张图片在

Adapter做的赋值处理
RequestOptions myOptions = new RequestOptions();
Glide
        .with(mContext)
        .asFile()
        .load(banabeanlist.get(position).picture)
        .apply(myOptions)
        .into(new SimpleTarget() {
            @Override
            public void onResourceReady(File resource, Transition transition) {
                (holder).ivxiangqing.setImage(ImageSource.uri(Uri.fromFile(resource)));
                (holder).ivxiangqing.setZoomEnabled(false);
                if ((holder).ivxiangqing.isReady()) {
                    float maxScale = ((MyHolder) holder).ivxiangqing.getMaxScale();
                    PointF center = new PointF(((MyHolder) holder).ivxiangqing.getSWidth(), 0);
                    (holder).ivxiangqing.setScaleAndCenter(maxScale, center);
                }
            }
        });

在Activity的布局文件中


如果你的Activity还有别的信息最外层嵌套ScrollView就可以了 ,在这里我就不多说了

好了 这样操作Android加载长图就可以

 

你可能感兴趣的:(Android必学)