Ich erhalte den Standardtext und nicht den tatsächlichen Text, der gespeichert wird, wenn ich versuche, auf eine gemeinsame Einstellung zuzugreifen. Ich habe getestet, dass es beim Speichern wahr zurückgibt, so dass ich ziemlich sicher bin, dass das Problem darin besteht, aus der Einstellungsdatei zu lesen.Android Xamarin: kann nicht von SharedPreferences lesen
Die Präferenz Klasse
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");
}
}
}
Die Klasse den Vorzug zu speichern:
string warningText = Intent.GetStringExtra("warningText");
Context mContext = Android.App.Application.Context;
SaveWarningMessage classInstans = new SaveWarningMessage();
classInstans.MyAppPref(mContext);
classInstans.SaveString(warningText);
Die Klasse das Lesen von der Präferenz:
Context mContext = Android.App.Application.Context;
SaveWarningMessage classInstans = new SaveWarningMessage();
classInstans.MyAppPref(mContext);
string message = classInstans.GetString();
Ihre Kommentare sehr viel Sinn macht und ich die Änderungen umgesetzt werden, aber es ist immer noch nicht funktioniert, und ich bin jetzt noch verwirrter ... Aber thx –
@MajaOkholm Also, wenn du 'classInstans2.GetString();] anrufst, bekommst du' 'pref' anstatt' SomeStringToSave'? – SushiHangover
@MajaOkholm sagte, dass ich normalerweise einen völlig anderen Ansatz verwende und dass du wahrscheinlich deinen Code gut verändert hast, versuche, was ich in meiner Antwort geschrieben habe, ich bin wirklich neugierig, ob ich es gefunden habe. –