如何在共享首选项中设置数组?

时间:2013-01-28 06:59:36

标签: android sharedpreferences

  

可能重复:
  Is it possible to add an array or object to SharedPreferences on Android

我在闹钟中使用共享首选项创建了多个闹钟现在我希望闹钟应该在一周中的特定日期响铃,因为我想要一个阵列可以节省他应该响铃的日期。 任何人都可以告诉如何将数组放入共享首选项以及如何再次检索它。?

SharedPreferences set=getSharedPreferences(MYPR, 0);
            SharedPreferences.Editor ed=set.edit();
            ed.putInt("Ahh", Ahh);
            ed.putInt("Amm",Amm);
            ed.putBoolean("en", true);
            ed.commit();

现在我将闹钟时间及其属性放在共享的首选项中。什么是添加到数组(星期几)也.. ..

1 个答案:

答案 0 :(得分:4)

要写,

SharedPreferences prefs = PreferenceManager
            .getDefaultSharedPreferences(this);
    JSONArray jsonArray = new JSONArray();
    jsonArray.put(1);
    jsonArray.put(2);
    Editor editor = prefs.edit();
    editor.putString("key", jsonArray.toString());
    System.out.println(jsonArray.toString());
    editor.commit();

要阅读,

try {
        JSONArray jsonArray2 = new JSONArray(prefs.getString("key", "[]"));
        for (int i = 0; i < jsonArray2.length(); i++) {
             Log.d("your JSON Array", jsonArray2.getInt(i)+"");
        }
    } catch (Exception e) {
        e.printStackTrace();
    }