私のAndroid用モノラルアプリでは、アクティビティのユーザー設定をアクティビティ設定に保存したいと思います。ユーザーがこの値を変更するたびにこれを行います。
ISharedPreferences prefs = GetPreferences(FileCreationMode.Append);
ISharedPreferencesEditor editor = prefs.Edit();
editor.PutInt(NO_PIXELS_PER_HOUR_KEY, m_noPixelsPerHour);
editor.Commit();
ここで、NO_PIXELS_PER_HOUR_KEYは次のとおりです。
private const string NO_PIXELS_PER_HOUR_KEY = "PIXELS_PER_HOUR";
次に、この値をアクティビティのOnCreateメソッドに再度ロードする必要があります。
ISharedPreferences preferences = GetPreferences(FileCreationMode.Append);
int tempNoPixelsPerHour = preferences.GetInt(NO_PIXELS_PER_HOUR_KEY, -1);
if (tempNoPixelsPerHour == -1)
m_noPixelsPerHour = (int)(m_deviceHeight * 0.25);
else
m_noPixelsPerHour = tempNoPixelsPerHour;
問題は、値が持続していないように見えることです!アクティビティを終了してアクティビティに戻ると、デフォルト値の-1が返されます。正しく保存されていないのか、正しくロードされていないのかわかりません。どんな助けでもいただければ幸いです!ありがとう、デイブ