Androidではどのように複数のStringsをSharedPreferenceに保存をしたり一部を削除したり出来るのでしょうか?
自分は保存するときは下記のようしてます。
lang
1 public String[] getFavoriteList(Activity activity){ 2 String favoriteList = getStringFromPreferences(activity,null,"favorites"); 3 return convertStringToArray(favoriteList); 4 } 5 6 public boolean addFavoriteItem(Activity activity,String favoriteItem){ 7 //前のデータを取得しる 8 String favoriteList = getStringFromPreferences(activity,null,"favorites"); 9 // 新しく追加処理を行う 10 if(favoriteList!=null){ 11 favoriteList = favoriteList+","+favoriteItem; 12 }else{ 13 favoriteList = favoriteItem; 14 } 15 // Shared Preferencesに保存する 16 return putStringInPreferences(activity,favoriteList,"favorites"); 17 } 18 19 20 public String getStringFromPreferences(Activity activity,String defaultValue,String key){ 21 SharedPreferences sharedPreferences = activity.getPreferences(Activity.MODE_PRIVATE); 22 String temp = sharedPreferences.getString(key, defaultValue); 23 return temp; 24 } 25 public boolean putStringInPreferences(Activity activity,String nick,String key){ 26 SharedPreferences sharedPreferences = activity.getPreferences(Activity.MODE_PRIVATE); 27 SharedPreferences.Editor editor = sharedPreferences.edit(); 28 editor.putString(key, nick); 29 editor.commit(); 30 return true; 31 } 32 33 //文字を配列に変更する 34 private String[] convertStringToArray(String str){ 35 String[] arr = str.split(","); 36 return arr; 37 }
上記のコードのようにStringをappendして保存するようにしてますが、一部のStringを削除しようとしても中々うまく行かなくて困っています。 一度つなげたStringを配列形式にして一部だけ削除をしたりしたいのですが、何かいい方法はありませんでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。