我正在截取 WebView
的整个屏幕截图并在 ImageView
上显示位图。位图可以是 7 屏幕高度。 (例如 1440x14000 像素)
我经常面对
OutOfMemoryError.
我看过 this
这表示将按比例缩小的版本加载到内存中,但我不想失去图像质量。网络上有相同的方法。
有没有办法在不加载缩小版本的情况下处理OutOfMemoryError?
最佳答案
The bitmap can be 7 screen height. (E.g. 1440x14000 px)
请注意,这意味着用户无法以全分辨率一次看到整个图像。
I'm frequently face with OutOfMemoryError
在大多数设备上,您将很难加载这么大的图像,因为您无法获得这么大的单个连续内存块。
This says that load a scaled down version into memory but I don't want to lose image quality
在某种程度上,您没有太多选择。如果您希望用户立即看到图片的完整范围,则必须缩放图片以适合屏幕。
Is there any way to handle OutOfMemoryError without loading scaled down version?
ImageView
替代品提供了平移和缩放功能。其中一些,例如 this one ,处理一次加载部分图像,无论缩放比例是当前缩放级别所必需的,以便您更有可能向用户显示整个图像。
关于android - 加载非常大的位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41185650/