首先,我知道使用inJustDecodeBounds
和inSample
大小的加载位图大小接近所需大小的推荐方法。然而,这是一个相当宽泛的方法,只能获得接近目标的图像。缩放大位图替代方法
我尽管已经利用options.inDensity
和options.inTargetDensity
诱骗本地加载程序将图像更精确地缩放到所需的目标大小。基本上,我将options.inDensity
设置为图像的实际宽度,并将options.inTargetDensity
设置为所需的宽度,并且确实获得了所需尺寸的图像(在此情况下纵横比恰好保持相同)。然后在结果图像上设置image.setDensity(DENSITY_NONE)
,并且全部显示工作正常。
任何人都知道这种方法有什么问题吗?有关内存效率和图像质量的任何想法?
听起来很棒! (不能相信android devs编写代码,但没有以合理和明智的方式公开功能)。 – 2013-02-16 19:42:45
听起来很酷!你可以请一个样品吗? – 2013-02-16 19:52:06
我认为虽然使用inSample更多的性能优化,不是吗?因为CPU/GPU更容易以这种方式处理采样,不是吗? – 2013-02-16 20:01:07