質問: prefs.edit(); editor.putString("string1", "value1"); editor.apply(); } } ```
回答: > > 多めの複数データの読み書きとなってくると、SharedPreferencesの宣言方法はどちらが適切になるとか、 > > 変わってきたりするものでしょうか? > > > どちらでも構わないと思います。冗長性を考えると後者の方がいいように思いますが、「prefsに未代入のままメソッドを呼び出してぬるぽ」というチョンボを起こさないように気を配るという程度のことではないかと思います。 > > (既に、"string1", "value1"というキーと値のペアで保存していた場合、"string1", "value2"に書き直せないという挙動でした。) > > 上記質問に加えて、今回試したコードでデータの書き換えができないのは何故でしょうか? > > > これは意味がわかりません。後者のコードで一度実行しActivityを閉じて書き込みを行わせた後、onDestroy()で書き込む値を"value2"に書き換え、再度実行→Activityを閉じる→もう一度実行で"value2"を読み出せます(試すまでもないのですが、実際に試しました)。お示しいただいたコードに処理を追加したものでうまくいっていないものと思いますが、そのコードそのものを見なければ原因はわかりません。