我在此应用中看到:https://play.google.com/store/apps/details?id=com.appvl.haivl 有时它显示高度大于2048px的大图像,例如:http://s4.haivl.com/data/photos2/20130623/ce07dcc8255b49b4a55a9cd265db9872/medium-571180dcb6e34226960556476e87483c-400.jpg(恰好400x2645px,但它的大小很小 - 211KB)。
但是当我制作一个演示来显示这个图像时,我总是得到“Bitmap太大而无法上传到纹理”异常。
我确信有办法显示此图片,因为在上面的应用中,它是可能的。
任何人都可以建议我如何显示这样的图像而不需要缩小它?
我会非常感激。
答案 0 :(得分:4)
关闭硬件加速。
来自AndroidManifest.xml的Activity:
<activity ... />
<activity android:hardwareAccelerated="false" />
或在显示图像的视图上:
yourView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
答案 1 :(得分:0)
谢谢@MichaelShrestha的链接。最后,我找到了一种使用BitmapRegionDecoder在Android中显示大图像的方法。检查此链接以获取示例代码: https://stackoverflow.com/a/12161993/190309