关于GLSurfaceView无法显示的问题

    有时候,我们将GLSurfaceView放到一个ViewGroup中,并且与其他的一般的View共同作用,组成界面。有可能会出现GLSurfaceView无法显示的问题。这个时候,我们只需要调用对GLSurfaceView调用一下layout即可。但是layout的参数必须要有所改变。其值不能与原来相同。也就是说要这样调用。比如我们有个GLSurfaceView叫做 glView。可以向下面这样处理:

glView.layout(glView.getLeft()+1, glView.getTop()+1, glView.getRight()+1, glView.getBottom()+1);

当然,你还需要把位置恢复回去,只需要再调用一次layout,并且把坐标值设置为原来的值就可以了

    另外,有时候,我们的GLSurfaceView的Z序会混乱,这个时候,可以调用Surface的函数

     setZOrderMediaOverlay();
     setZOrderOnTop()

    来处理。

你可能感兴趣的:(关于GLSurfaceView无法显示的问题)