android大图加载中的陷阱

2016-07-21  本文已影响0人  wleics

关于android中在加载图片时,提示Bitmap too large to be uploaded into a texture异常时的处理办法

关于这个问题可以简单的理解为,由于Bitmap太大了,造成了Android无法进行渲染。

为了解决这个问题,可以采用关闭硬件加速的方式。具体方法为通过使用GLES10.glGetIntegerv方法来获取openglRender的限制值,并且根据bitmap的宽高大小来判断是否需要关闭对应控件的硬件加速功能。

public static boolean isNeedCloseHardwareAcceleration(int w, int h) {
            int[] maxSize = new int[1];
    GLES10.glGetIntegerv(GL10.GL_MAX_TEXTURE_SIZE, maxSize, 0);
    if (maxSize[0] < h || maxSize[0] < w) {
        return true;
    }
    return false;
}

如何关闭视图的硬件加速功能

view.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

注意View是只能关闭硬件加速的

上一篇 下一篇

猜你喜欢

热点阅读