基本上我的数组采用这种格式,我希望将其存储在共享首选项中 但不知道有人会给我什么想法或代码
我正在使用动态内容
String[][] my_date;
my_date = new String[][] {
{"14","26"},
{"12","16","24","27"},
{"17"},
{"8","13","18"},
{"14"},
{},
{"29"},
{"15","18"},
{},
{"2","3","6","8","23"},
{"4","6","24"},
{}
};
答案 0 :(得分:0)
您可以在首选项中使用putStringSet
example preferences.putStringSet(“key”,Set);
答案 1 :(得分:0)
我有这个课程我做了
public class SavedPreference
{
static final String PREF_USER_NAME = "username";
static final String PREF_PASS = "password";
static SharedPreferences getSharedPreferences(Context ct)
{
return PreferenceManager.getDefaultSharedPreferences(ct);
}
public static void setUserName(Context ctx, String userName)
{
Editor editor = getSharedPreferences(ctx).edit();
editor.putString(PREF_USER_NAME, userName);
editor.commit();
}
public static void eraseSavedPreference(Context ctx)
{
Editor editor = getSharedPreferences(ctx).edit();
editor.clear();
editor.commit();
}
public static String getUserName(Context ctx)
{
return getSharedPreferences(ctx).getString(PREF_USER_NAME, "");
}
}
在你的案例中:
在setUserName中,您可以更改您添加2d数组的代码并迭代它们并使用putString添加它们
与获取它们相同
答案 2 :(得分:0)
您可以使用ObjectSerializer。 [https://github.com/apache/pig/blob/89c2e8e76c68d0d0abe6a36b4e08ddc56979796f/src/org/apache/pig/impl/util/ObjectSerializer.java]这个很棒的类允许你简单地序列化和反序列化每种对象,所以你可以简单地将它们保存为共享的字符串。 例如,一旦你得到了sharedPrefs的实例:
_sharedPrefs.edit().putString( YOUR_OBJECT_KEY, ObjectSerializer.serialize(object) ).commit();
要从共享中取出您的对象,您可以调用
_yourObject = (Object) ObjectSerializer.deserialize(_sharedPrefs.getString( YOUR_OBJECT_KEY, null));