如何在Android中显示大图像

时间:2013-06-23 03:54:13

标签: android imageview

我在此应用中看到: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太大而无法上传到纹理”异常。

我确信有办法显示此图片,因为在上面的应用中,它是可能的。

任何人都可以建议我如何显示这样的图像而不需要缩小它?

我会非常感激。

2 个答案:

答案 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