我在手机的文件系统中存储了全尺寸的图像文件,以及一种加载缩略图版本以用于ListView
. 我基本上使用 SO 和这里经常讨论的子采样技术。
链接中概述的方法要求您提供以像素为单位的目标宽度和高度,以便子采样工作。对于我的列表视图,这很好,因为缩略图宽度/高度被定义为维度资源,并且很容易转换为像素。这些ImageView
被加载到使用一个scaleXY
刻度类型。
除了列表视图,我还有一个单独的详细视图,我想在屏幕顶部将所选图像显示为横幅,但使用比例类型center
(不调整大小)。目标ImageView
在 a 内RelativeLayout
,高度固定(在资源区域中设置),宽度设置为fill_parent
。
所以我有3个问题:
- 鉴于我不希望对横幅图像进行任何特殊的调整大小(
scaleType
设置为center
),那么子采样技术是否仍然适用于此处? - 如果 #1 的答案是yes,那么我需要能够计算目标视图的宽度。由于目标的宽度(与高度不同)不像
ImageView
缩略图视图那样固定,我怎样才能找到有效宽度fill_parent
? - 如果#1 的答案是否定的,那么我怎样才能有效地将这个图像加载到视图中而不会有内存异常的风险?
谢谢!