我不能在libgdx
问题描述:
IM加吐司试图创建与接口 接口称之为吐司工作正常,只是,当我尝试敬酒它,它崩溃我不能在libgdx
在Android启动
public class AndroidLauncher extends AndroidApplication implements Interface {
public void tost() {
Toast.makeText(getContext(), "wrong num",
Toast.LENGTH_LONG).show();}}
在gameclass
interface Interface{void tost();}
public class MyGdxGame extends ApplicationAdapter {
final private Interface interface;
public MyGdxGame(Interface interface){this.interface=interface;}
public void render() {interface.tost}
答
Android的祝酒词必须在Android的UI线程上执行。 LibGDX中的游戏循环运行在OpenGL线程上,因此您必须将您的方法发布到UI线程才能安全地运行它,如下所示:
public class AndroidLauncher extends AndroidApplication implements Interface {
public void tost() {
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(getContext(), "wrong num",
Toast.LENGTH_LONG).show();}
}
});
}
}