美文网首页自定义控件
Android ImageView显示长图

Android ImageView显示长图

作者: 墨池又雨 | 来源:发表于2021-05-21 10:43 被阅读0次

这里做个记录,做项目时运营给后台商品上传了很多详情图,然而这些图都是很长的图片,ImagView显示不全。

百度各种奇葩的解决方式  :

1.给图片先切割再拼到一起,我在想我是个图片集合确定要这么搞?

2. 在xml属性中加入 android:adjustViewBounds="true"  让每个ImageView自己算你图片的高度?完了ImageView自己自适应控件高度?

反正我是都试了,不是滚动卡顿,就是没用!

其实主要原因 :Bitmap too large to be uploaded into a texture (1160x8390, max=4096x4096)

图片大小不能超过 4096x4096的长宽 

意思ImageView默认就给了这么大的长宽,你图片超出那么多,他就不显示。

我的解决办法:

final RequestOptions requestOptions =new RequestOptions().placeholder(0).dontAnimate().error(0);

String picture =mDatas.get(position).getPic();

Glide.with(context).asBitmap().load(picture.startsWith("http")?picture:MyUrl.PRODUCT_URL+picture).apply(requestOptions).into(new SimpleTarget(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL) {

@Override

    public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition transition) {

        double imageHeight = resource.getHeight()*1.00;

        double imageWidth = resource.getWidth()*1.00;

        double imageTotalHeight =width*(imageHeight/imageWidth);

        holder.imageView.setLayoutParams(new LinearLayout.LayoutParams(width,(int)imageTotalHeight));

        holder.imageView.setImageBitmap(resource);

    }

});

使用 Giled onResourceReady方法获取资源文件的宽和高(切记这里的宽和高一定要是double或者浮点型,否则会失去精度。主要代码已标粗)

进行等比换算,最后重新设定ImageView的宽高就这么简单!

如果你又更好的方式留言反馈,感谢!!!

相关文章

  • Android ImageView显示长图

    这里做个记录,做项目时运营给后台商品上传了很多详情图,然而这些图都是很长的图片,ImagView显示不全。 百度各...

  • ImageView显示长图

    显示长图失败 我们知道,ImageView经常用来显示一些位图,但是不是所有的图片都能够正常显示的,很明显不是的,...

  • Android ImageView加载长图

    需求 一个Activity页面纯展示一张长图,看起来功能是简单的,可还是有些坑存在。记录一下。 坑 要做UI适配,...

  • Android ImageView 长图部分机型加载无法显示问题

    相信很多朋友和我一样,用ImageView控件加载长图的时候会遇到这样的一个问题,同一张长图在有些机型可以正常显示...

  • ImageView的ScaleType属性见解

    android:scaleType=”center”(裁剪) 保持原图尺寸大小,显示在ImageView控件的中心...

  • 关于ImageView图片宽高比的问题

    在Android的ImageView中图片宽高显示不友好,为了更明显地体现问题,给ImageView加了个chat...

  • UIScrollView - 新特性

    效果图 思路: 显示图片(纯代码显示图片)创建imageView -> 创建image -> 设置imageVie...

  • android内存优化

    参考自Android内存优化大全(中)一、Bitmap优化 修改图片的显示大小 不要用ImageView直接显示,...

  • GIFView与Android

    效果图 Android的ImageView是不支持GIF播放的,如果需要让ImageView支持GIF就需要做自定...

  • android -------- GifView 显示gif图片

    效果图 Android的ImageView是不支持GIF播放的,如果需要让ImageView支持GIF就需要做自定...

网友评论

    本文标题:Android ImageView显示长图

    本文链接:https://www.haomeiwen.com/subject/frnbpftx.html