当前位置 : 主页 > 手机开发 > android >

Android onDraw()是一种可疑的方法调用

来源:互联网 收集:自由互联 发布时间:2021-06-11
对于 Android画布游戏,我使用以下(最小化)方法来请求重绘SurfaceView: private void refreshView() { c = surfaceView.getHolder().lockCanvas(); synchronized (surfaceView.getHolder()) { surfaceView.onDraw(c); } 但是自从最后
对于 Android画布游戏,我使用以下(最小化)方法来请求重绘SurfaceView:

private void refreshView() {
        c = surfaceView.getHolder().lockCanvas();
        synchronized (surfaceView.getHolder()) {
            surfaceView.onDraw(c);
        }

但是自从最后一个android sdk(22.2.1)以来,它在surfaceView.onDraw上给了我一个Lint警告

Suspicious method call; should probably call “draw” rather than
“onDraw”

当我使用绘图而不是onDraw时,屏幕保持黑色.当我使用postInvalidate()时,渲染性能会降低.

有什么我做错了吗?有没有更好的方法来实现这个?

按照惯例,名为On ***的Android API方法不应该由您的代码直接调用,而只能由Android操作系统本身调用.我希望,有人会告诉你在这种情况下使用什么而不是它… 对于性能:如果性能成为问题,为什么不使用OpenGL? (或使用OpenGL的库)
网友评论