0
共有設定にアクセスしようとしたときに保存された実際のテキストではなく、デフォルトのテキストが表示されます。私は保存時にtrueを返すことをテストしたので、問題が環境設定ファイルから読み取っていることを確認しています。Android Xamarin:SharedPreferencesから読み取ることができません
プリファレンスクラスリファレンスを保存
public class SaveWarningMessage : Activity
{
private ISharedPreferences myPref;
private ISharedPreferencesEditor myPrefEditor;
private Context myContext;
public void MyAppPref(Context context)
{
this.myContext = context;
myPref = PreferenceManager.GetDefaultSharedPreferences(myContext);
myPrefEditor = myPref.Edit();
}
public void SaveString(string text)
{
myPrefEditor.PutString("warning text", text);
var returnValue = myPrefEditor.Commit();
}
public string GetString()
{
return myPref.GetString("warning text", "could not get pref");
}
}
}
クラス:
string warningText = Intent.GetStringExtra("warningText");
Context mContext = Android.App.Application.Context;
SaveWarningMessage classInstans = new SaveWarningMessage();
classInstans.MyAppPref(mContext);
classInstans.SaveString(warningText);
好みからクラス読み:
Context mContext = Android.App.Application.Context;
SaveWarningMessage classInstans = new SaveWarningMessage();
classInstans.MyAppPref(mContext);
string message = classInstans.GetString();
あなたのご意見は、多くの意味を行い、私は変更を実施し、しかし、それはまだ動作していない、と私はしかし今ではもっと混乱しています...しかしthx –
@MajaOkholm 'classInstans2.GetString();'を呼び出すと、 'SomeStringToSave'の代わりに' could not get pref'を取得していますか? – SushiHangover
@MajaOkholmは、通常、私はまったく別のアプローチを使用していると言いました。おそらくあなたはコードをうまく変更しました。私の答えに書いたものを試してみると、私はそれを釘付けにするのか本当に興味があります。 –