其他活动中的复选框值

时间:2013-03-22 14:55:33

标签: android

大家好 我正在寻找一个解决我试图找到的一个问题的解决方案,但我没有找到我的问题的答案,所以我决定问你也许有人会这么善良,并且会解释我可以解决我的问题。

所以我有两个活动,一个配置一个和一个主要活动,我的问题是,当我在配置活动中选中一个复选框时(我成功保存了复选框状态,所以当我检查它时,即使我离开也会检查它配置活动),但我不知道如何在主活动中使用checkbx状态。我找到了很多建议,但对我来说没什么用。 提前谢谢你。

感谢大家的答案,但我没有成功解决我的问题,并且我的建议我做了以下:在第二个活动(我有CheckBox):我有一个保存功能,我使用SharedPreferences保存Checkbox状态(即使我关闭活动或其他任何其他状态的Checkbox保持其状态)并且我已经创建了一个Load函数,当我加载回活动时它正在加载以前的状态所以在这个活动里面我的东西没关系,但在这种情况下,如何在MainActivity中使用load函数的值(实际上是复选框值)。 我很抱歉给您带来不便,但我知道但我想学习。

再次感谢你们。

3 个答案:

答案 0 :(得分:4)

将值存储在SharedPreference中以获取复选框

的值
chkIos.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        if (((CheckBox) v).isChecked()) {
            SharedPreferences sharedPreferences = context.getSharedPreferences("settings", Context.MODE_PRIVATE);
            Editor editor = sharedPreferences.edit();
            editor.putString("checkboxState",((CheckBox) v).isChecked());
            editor.commit();
            //Save the state of checkbox in sharedPreference
        }
    }
});

在主要活动中获得这样的状态。

SharedPreferences sharedPreferences = context.getSharedPreferences("settings", Context.MODE_PRIVATE);
String stateValue = sharedPreferences.getString("checkboxState);

答案 1 :(得分:0)

我猜共享偏好会解决这个问题

SharedPreferences.Editor editor = app_preferences.edit();
editor.putBoolean("Checkbox", value);
editor.commit();


SharedPreferences app_preferences = 
    PreferenceManager.getDefaultSharedPreferences(this);
boolean value = app_preferences.getBoolean("Checkbox", false);

答案 2 :(得分:0)

您可以使用SharedPreferences保存设备中CheckBox的状态,以便从其他Activity中检索。

Here是如何使用它们的示例。您还可以查看此YouTube视频,了解如何为Activities制作首选项屏幕。