libgdx中的Android AlertDialog对单击没有反应
我试图在扩展libgdx中的Android AlertDialog对单击没有反应,android,libgdx,android-alertdialog,Android,Libgdx,Android Alertdialog,我试图在扩展AndroidApplication的类(扩展活动的libgdx类)中显示警报对话框。代码如下所示 import android.app.AlertDialog; public class Solitaire extends AndroidApplication{ public void alertBoxWonMessage() { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Solit
AndroidApplication
的类(扩展活动的libgdx类)中显示警报对话框
。代码如下所示
import android.app.AlertDialog;
public class Solitaire extends AndroidApplication{
public void alertBoxWonMessage() {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Solitaire.this);
// set title
alertDialogBuilder.setTitle(R.string.won_title);
// set message and positive button
alertDialogBuilder
.setMessage(Html.fromHtml("Total time: " + timeForAlert(time) + "<br>" + "Total Points: " + pointsView.getText().toString()))
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// if this button is clicked, close
// current activity
Log.d("Hi", "hi");
dialog.dismiss();
exit();
Solitaire.this.finish();
}
});
// create alert dialog
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
}
}
我认为这不是问题,因为我发现一些人有同样的问题,他们被告知,这不是问题,但可能是
所以,有什么想法吗?您为Android平台创建的对话框可能是通过将其与接口一起使用。为什么不为libgdx使用跨平台对话框创建API呢
试试看,这是对本机对话框的开源跨平台(Android、iOS、iOS MOE、桌面)支持。集成非常简单,只需将依赖项放入build.gradle、刷新和使用即可 您正在为Android平台创建对话框,可能是因为您正在将其与接口一起使用。为什么不为libgdx使用跨平台对话框创建API呢
试试看,这是对本机对话框的开源跨平台(Android、iOS、iOS MOE、桌面)支持。集成非常简单,只需将依赖项放入build.gradle、刷新和使用即可 显然,问题在于调用alertBoxWonMessage
的runOnUiThread
被多次调用。确保只调用一次后,一切正常
感谢大家的帮助。显然,问题在于调用alertBoxWonMessage
的runOnUiThread
被多次调用。确保只调用一次后,一切正常
谢谢大家的帮助。如何以及从何处调用alertBoxWonMessage()方法?请尝试将此方法中的所有代码包装在一个runnable中,并传递给runOnUiThread()
。(只是一个猜测)@Tenfour04:alreadyI添加了我得到的这些奇怪的控制台打印,但在一开始认为并不重要。请参见最后的原始问题。@Isabella您正在使用emulator吗?您是否尝试过在真实设备上运行?如何以及从何处调用alertBoxWonMessage()方法?尝试将此方法中的所有代码包装在一个可运行文件中,并传递给runOnUiThread()
。(只是一个猜测)@Tenfour04:alreadyI添加了我得到的这些奇怪的控制台打印,但在一开始认为并不重要。请参见最后的原始问题。@Isabella您正在使用emulator吗?你有没有试过,在真正的设备上运行?谢谢,但不幸的是,它做了同样的事情(显示,但不响应点击)。关于您的评论:它是在RunUnuithRead中调用的。@Isabella请让我看看您的alertBoxWonMessage()方法的调用部分。谢谢,但不幸的是,它做了同样的事情(显示,但不响应单击)。关于您的评论:它是在runOnUiThread中调用的。@Isabella请让我看看您的alertBoxWonMessage()方法的调用部分。
E/EGL_emulation: tid 5206: eglSurfaceAttrib(1174): error 0x3009 (EGL_BAD_MATCH)
W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x9488e800, error=EGL_BAD_MATCH