Dialog仅在启动时第一次启动?

时间:2013-09-18 00:10:48

标签: java android startup android-alertdialog

我尝试在启动我的应用程序时创建一个对话框,如下所示:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("Hi Stackoverflow!").create().show();
}

但我想这样做,如果我点击“不再显示”对话框中的复选框,那么第二次启动应用程序时,对话框不会出现。我该怎么办?

2 个答案:

答案 0 :(得分:2)

如果您只想要Dialog Button,那么您真的不需要AlertDialog。您只需创建Dialog,使用layoutDialog为xml中的CheckBox创建Button,然后使用setContentView() Dialog

要再次不显示Dialog,只需创建一个boolean变量,如果选中该复选框,则使用onCheckedChanged()将该变量设置为true。将其保存在SharedPreferences中并在启动时检查该值。

Good example of getting started with SharedPreferences

SharedPreferences complete docs

答案 1 :(得分:1)

您可以使用SharedPreferences。添加一个标志,告诉您之前是否显示过对话框(或之前是否已启动该应用程序),并从那里确定是否显示该对话框。