游戏退出,安卓停止线程抛出异常

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
// ȫ���ö�
prepare(0);
game = new Thread(thread);
thread = new GameThread();
game.start();
}
   @Override
protected void onRestart() {
super.onRestart();
ExitGame = false;
}
   @Override
protected void onPause() {
// thread.stop();
super.onPause();
}

@Override
protected void onDestroy() {
super.onDestroy();
// mOrientationListener.disable();

}

class GameThread implements Runnable {
Message msg;
boolean exitflag = false;

@Override
public void run() {// �[�?�
while (!exitflag && !Thread.currentThread().isInterrupted()) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
}
if (ExitGame) {
exitflag = true;
game.interrupt();
// Message msg = new Message();
// msg.obj = true;
// mHandler.sendMessage(msg);
} else {
contorlView.postInvalidate();
if (!gv.molisha.isGameExit()) {//是否绘制
gv.postInvalidate();
mHandler.sendEmptyMessage(0);//交给
}
}
}
}
}
  @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { //按下的如果是BACK,同时没有重复
// Toast.makeText("lyj_test","now_is_back_event",1).show();
ExitGame = true;
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
game = null;
// game.destroy();
// game.stop();
// game.exit = true; // 终止线程thread
// game.join();
finish();
return true;

}
return super.onKeyDown(keyCode, event);
}
// 2、重写onBackPressed方法
//
// Android 2.0开始又多出了一种新的方法,对于Activity 可以单独获取Back键的按下事件,直接重写onBackPressed方法即可,代码如下

@Override
public void onBackPressed() {
// 这里处理逻辑代码,大家注意:该方法仅适用于2.0或更新版的sdk
return;
}
}
最后我们看看壁纸解解乏http://www.gamersky.com/ent/201802/1015227_7.shtml

转载于:https://www.cnblogs.com/totoo/p/totooaoo34.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值