我有一个 SurfaceView 设置并正在运行,但是当我恢复它时,我收到一个错误,表明线程已经启动。当应用程序进入后台然后返回前台时,正确的处理方法是什么?我已经修补并设法让应用程序在没有崩溃的情况下返回......但surfaceView不再绘制任何东西。我的代码:
@Override
public void surfaceCreated(SurfaceHolder holder) {
Log.e("sys","surfaceCreated was called.");
if(systemState==BACKGROUND){
thread.setRunning(true);
}
else {
thread.setRunning(true);
thread.start();
Log.e("sys","started thread");
systemState=READY;
}
}
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
Log.e("sys","surfaceDestroyed was called.");
thread.setRunning(false);
systemState=BACKGROUND;
}