感谢Schermvlieger在anddev.org上提出这个问题,
我只是将他的问题复制给 SO,因为没有人在其他网站上回复,我也面临同样的问题。
我想知道就BitmapFactory.Options.inSampleSize
显示图像的速度而言,最佳用途是什么。
文档提到使用 2 的幂的值,所以我正在使用 2、4、8、16 等。
我想知道的是:
- 我应该重新采样到仍然大于屏幕分辨率的最小尺寸,还是应该采样到刚好足以避免出现
OutOfMemoryError
? - 如何计算在不耗尽内存的情况下仍然可以显示的图像的最大尺寸?图像的颜色深度是否也起作用,以及显示的深度?
- 顺便说一下,通过两种机制(
BitmapFactory
对于大文件,setImageURI()
对于较小的文件)显示图像是否有效ImageSwitcher
。 - 是否有助于在应用程序的开头创建
Bitmap
,BitmapFactory.Options
和inTempStorage
在需要时仅在运行中创建它们?