Android的OpenGL ES的:不能内螺纹已不叫Looper.prepare创造处理器()

我正在开发的游戏,我想显示对话框,当玩家失败或完整级别。 这样的代码。

@Override public void onDrawFrame(GL10 gl) { if(fail) { Dialog restart = new Dialog(SquareRenderer.this); restart.setContentView(R.layout.restart); restart.show(); } }

日志猫说无法创建线程里面已经不叫Looper.prepare处理器()

我怎样才能解决这个问题。

--------------解决方案-------------

你已经创建了一个Handler ? 这将允许您以显示Dialog的UI线程。 创建您的Handler是这样的...

private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 0:
Dialog restart = new Dialog(SquareRenderer.this);
restart.setContentView(R.layout.restart);
restart.show();
break;
}
}
};

...然后当你需要显示它只是将消息发送到你的Handler ...

@Override
public void onDrawFrame(GL10 gl) {
if(fail) {
handler.sendMessage(Message.obtain(handler, 0));
}
}

分类:安卓 时间:2015-03-14 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.579 (s). 10 q(s)