我试图用接口调用它来创建吐司 界面工作得很好只是当我试图用它祝酒时,它崩溃了
Android启动器中的
public class AndroidLauncher extends AndroidApplication implements Interface {
public void tost() {
Toast.makeText(getContext(), "wrong num",
Toast.LENGTH_LONG).show();}}
游戏类中的
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}
答案 0 :(得分:0)
必须在Android UI线程上执行Android toast。 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();}
}
});
}
}