[英]Android - stop showing AlertDialog if button already clicked
如果用户确实按下了该按钮,则需要停止显示AlertDialog(位于OnCreate中)。 如果已经单击肯定按钮,则需要禁用AlertDialog。
AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this);
dlgAlert.setMessage(getString(R.string.dialogMSG));
dlgAlert.setTitle("App Support Checker");
dlgAlert.setPositiveButton(R.string.yesdev,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
dlgAlert.setCancelable(false);
dlgAlert.create().show();
您需要将其指向其他地方,我的意思是其他活动。 否则,可以使用setNegativeButton代替setPositiveButton。
dlgAlert.setNegativeButton(R.string.yesdev,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
干杯,
您是说在按下肯定按钮时需要删除对话框吗? 顺便说一下,您可以为对话框调用dismiss()api来删除对话框。
要获取共享的首选项,请在您的活动中使用以下方法:
SharedPreferences prefs = this.getSharedPreferences( "com.example.app", Context.MODE_PRIVATE);
要阅读首选项:
String dateTimeKey = "com.example.app.datetime";
long l = prefs.getLong(dateTimeKey, new Date().getTime());
编辑和保存首选项
Date dt = getSomeDate();
prefs.edit().putLong(dateTimeKey, dt.getTime()).commit();
android sdk的示例目录示例,用于检索和存储共享首选项。 它位于/ samples / android- / ApiDemo目录中
要将值存储在共享首选项中:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("Name","Sushil");
editor.commit();
要从共享的首选项中检索值:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String name = preferences.getString("Name","");
if(!name.equalsIgnoreCase("")) {
name = name+" Jha"; /* Edit the value here*/
}
这是处理您正在讨论的方案的正确和最佳方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.