【Android 内存优化】自定义组件长图组件 ( 自定义组件构造方法 ) 基础上继续开发 ;
一、获取图像真实宽高
----
显示的图像是一张长图 , 在该组件中 , 宽度肯定要完整显示出来 , 解码图片的不同高度的数据...;
首先要测量图片数据的真实宽高 , 然后根据图像的宽高 , 与组件的宽高 , 以及要显示的图像位置 , 计算要解码的图像区域 ;
参考 【Android 内存优化】Bitmap 图像尺寸缩小 ( 设置...显示区域计算原则 : 这是一张长图 , 宽度完全显示 , 高度显示部分 ; 根据组件的宽高计算图像显示的区域 , 组件的宽高已知 , 宽高比例确定 ; 该宽高比例下 , 图片显示的区域也必须是该比例 ;...图像绘制 :
① 设置图像区域解码器 : 在为自定义组件设置图片时 , 设置区域解码器 , 因为要设置区域解码的数据源 , 因此必须在用户设置图片时 , 才可以创建区域解码器 ;
② 设置内存复用 :...方法 , 解码图片的特定区域 ;
④ 设置图片缩放 : 使用 Matrix 进行图像缩放 ; 图像与自定义组件的尺寸不同 , 因此需要将解码区域完全填充到自定义组件中显示 ;
⑤ 图像绘制 : 调用