gpt4 book ai didi

java - 在主 Activity 上无法在 Android 中显示弹出窗口 Android 无法在未调用 Looper.prepare() 的线程内创建处理程序

转载 作者:行者123 更新时间:2023-11-29 07:55:40 25 4
gpt4 key购买 nike

为了将输入值插入到 mysql 数据库中,我编写了 insert() 方法

插入方法成功插入数据后,我想显示带有消息“成功”的对话框弹出窗口

但我无法执行dialog.show()代码:(

可能是因为我传递了MainActivity.this

Code in MainActivity 

public class MainActivity extends Activity {

//call insert method to insert data into mysql
new Thread(new Runnable() {
public void run() {
insert(name.getText().toString());
}
}).start();


}



public void insert(final String name){

//insert logic code
//returns true if success

if(true)
{
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this);
alertDialogBuilder.setMessage("Record submited successfully!");
alertDialogBuilder.setTitle("Success!");
alertDialogBuilder.setCancelable(false);
alertDialogBuilder.setNeutralButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton){
dialog.cancel();
}
})
.show();

}

}//END class MainActivity

这是我的问题:(

最佳答案

在主应用程序线程上调用 show(),例如从 AsyncTaskonPostExecute()

关于java - 在主 Activity 上无法在 Android 中显示弹出窗口 Android 无法在未调用 Looper.prepare() 的线程内创建处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25222020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com