我目前正在制作一款具有MainActivity和SurfaceView的游戏。 SurfaceView不是它自己的活动,而只是在MainActivity中调用。
我要做的是在MainActivity(暂停/恢复)上有一个按钮,它会在SurfaceView上暂停渲染并在点击时再次恢复。
我不完全确定如何做到这一点,在我的SurfaceView(GameView)中我可以停止我的GameLoopThread但是如果我尝试简单地重新启动它(暂停然后恢复游戏)它什么都不做。
我尝试暂停/恢复活动本身以及尝试在布尔运行中运行我的SurfaceView但似乎都没有工作。
任何想法都将不胜感激!
答案 0 :(得分:2)
您可以在SurfaceView类中创建类似boolean的标志,如isRunning = false;然后在开始你的线程之前检查它。还可以在表面视图中创建两个onPause()和onResume()方法。
onPause(){
isRunning=false;
// make thread null;
}
And
onResume(){
isRunning=true;
}
接受调用活动onPause()和onResume()方法中的这两种方法。
答案 1 :(得分:0)