java - Android Sharedpreferences 传递变量值

标签 java android sharedpreferences android-sharedpreferences

如何将变量的值传递给其他类?我正在使用 SharedPreference,但我不知道是否将正确的值传递给其他类。这是我的发言。

if (arr != null) {
    int sum = 0;
    for(int i = 0;i<arr.length();i++) {
        listdata.add(arr.get(i).toString());
        String money = arr.getJSONObject(i).getString("amount");
        sum += Integer.parseInt(money);
    }

    SharedPreferences sharedPref1 = getActivity().getSharedPreferences(String.valueOf(sum), Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = sharedPref1.edit();
    editor.putInt(String.valueOf(sum), sum);
    editor.commit();
}

这是我在其他类中获取SharedPreference的方法。这是正确的吗?

 SharedPreferences sharedpref1 = getContext().getSharedPreferences(String.valueOf(""), MODE_PRIVATE);
 int budgeted = sharedpref1.getInt(String.valueOf(""), Integer.parseInt(""));

最佳答案

SharedPreference 基本上是本地存储在应用程序包存储中的键值对。因此,您可以为应用程序中的 SharedPreference 选择一个标签。假设您的 SharedPreference 标记是 MySharedPreference

因此,如果要在 SharedPreference 中存储值,您需要执行此操作。

SharedPreferences sharedPref1 = getActivity().getSharedPreferences("MySharedPreference", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref1.edit();
editor.putInt("TotalSum", sum);  // Pick a key here. 
editor.commit();

当您从其他类检索偏好值时,只需执行此操作即可。

SharedPreferences sharedpref1 = getContext().getSharedPreferences("MySharedPreference", MODE_PRIVATE);
int budgeted = sharedpref1.getInt("TotalSum", 0); // Use the same key you used before to retrieve the data. 

关于java - Android Sharedpreferences 传递变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40991606/

相关文章:

java - 有谁知道使用构建器模式包装 JOptionPane 的代码?

java - 如何从可运行线程中获取局部变量

android - Android更新Visualizer Audio Session ID

java - 如何使用共享首选项在回收器 View 中保存复选框选择?

java - 按下按钮(从远处)

java - 如何仅将客户端从 RMI 导出到 jar - Eclipse

java - 不幸的是,应用程序已停止,错误为零

android - 支付失败 "The merchant does not accept payments of this type"

java - 电话状态空闲时增加 float

android - 我想清除共享偏好的值