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 pref get 얻을 수 있습니까? – SushiHangover
@MajaOkholm은 대개 완전히 다른 접근법을 사용하고 있다고 말했습니다. 아마도 코드를 잘 바꾸었을 것입니다. 제 대답에 쓴 것을 시도해 보겠습니다. 내가 그것을 못 박았는지 정말 궁금합니다. –