2016-05-08 9 views
1

sharedPreferencesから特定のオブジェクトを削除しようとしていますが、何回か試しましたが、正しく行う方法がわかりません。SharedPreferencesからオブジェクトを削除する

これらは私がSharedPreferencesから専門分野を保存し、除外するために使用する2つの方法です:

public void saveDisciplineData(Discipline discipline){ 
    editor.putString("Discipline" + count, gson.toJson(discipline)); 
    editor.commit(); 
    count++; 
} 

public void excludeDisciplineData(Discipline discipline){ 
    for (int i = 0; i < count ; i++) { 
     Discipline d = gson.fromJson(sp.getString("discipline" + i, ""), new TypeToken<Discipline>() { 
     }.getType()); 
     if (d.equals(discipline)){ 
      editor.remove("discipline" + i); 
      break; 
     } 
    } 

    editor.commit(); 
    count--; 
} 

どのようにして、特定の調教オブジェクトを削除することができますか?

+1

「リスト」を保存して読み込まないのはなぜですか?または、JSONファイルやSQLiteデータベースなど、他のデータストアを使用しないでください。 – CommonsWare

答えて

5

削除しようとすると、小文字で値と規律を保存するときに、大文字のDを持つ規律を使用しています。 この種の問題を回避するために、定数DISCIPLINE = "discipline"を作成するとよいでしょう。

関連する問題