2014-04-23 16 views
0

基本上我的數組是這種格式的,我想這些信息存儲在共享偏好 ,但不知道怎麼會有人給我的想法或代碼如何把多維數組中的共享偏好在android系統

我與動態工作內容

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

您可以在首選項使用putStringSet

例如preferences.putStringSet( 「鑰匙」,集);

+0

ü可以解釋我越不明白的「設置」怎麼回事到開發者網站也沒有幫助我 – user2750762

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你可以改變在這裏的代碼,在其中添加你的二維數組和遍歷並添加使用它們putString

與獲取他們以及

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));