如何在警告框中添加“不再显示我”复选框?

时间:2012-05-15 12:38:11

标签: android android-alertdialog

当我的Android应用程序启动时会出现一个提示,询问用户是否升级到更新版本。我使用了一个警告框来显示它。我有两个按钮,“升级”和“不,谢谢”。然后我为它添加了一个复选框。该复选框的标签是“不要再问我”。当用户点击该复选框时,应该记住该复选框,并且不应再次询问提示。是否有人建议我实现此解决方案?

3 个答案:

答案 0 :(得分:1)

使用SharedPreferences并保存/检索布尔值以指示已选中/未选中状态

答案 1 :(得分:1)

您可以使用SharedPreferences存储用户的选择:

SharedPreferences preferences = 
      PreferenceManager.getDefaultSharedPreferences(getBaseContext());      
boolean showPrompt = preferences.getBoolean("Show_Prompt", true);

答案 2 :(得分:1)

您可以选择的最佳选项是SharedPreference。您可以保存在内部数据库中。

        PackageInfo info = getPackageManager().getPackageInfo(PACKAGE_NAME, 0);
        int currentVersion = info.versionCode;
        // version name here for display in the about box later.
        this.sVersionName = info.versionName;
        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
        int lastVersion = prefs.getInt("Key", 0);

        if (currentVersion > lastVersion) {

            prefs.edit().putInt("key",currentVersion).commit();
            Intent intent = new Intent(this, StartUp.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET)

           //  Your Code goes here if you want to Display it Only Once.

            return true;
        }

修改

SavePreferences("MEMORY1","Your String Here");   

private void SavePreferences(String key, String value) {
    SharedPreferences settings = getSharedPreferences(pref, 0);
    SharedPreferences.Editor editor = settings.edit();
    editor.putString(key, value);
    editor.commit();
}

private void LoadPreferences() {
    SharedPreferences settings = getSharedPreferences(Settings.pref, 0);
    String sDefault_Card = settings.getString("MEMORY1", "");
}