Die schnellste Möglichkeit, dies zu implementieren, ist James Montemagno Settings Plugin. Es ist als NuGet-Paket verfügbar. Denken Sie daran, es in allen Ihren Projekten zu installieren.
Es sollte ziemlich selbsterklärend sein. Wenn Sie das Paket installieren, erstellt es bereits eine Hilfsklasse für Sie und zeigt Ihnen eine Readme-Datei.
Es funktioniert nur mit einfachen Typen sein: Boolean
, Int32
, Int64
, String
, Single
(float), Guid
, Double
, Decimal
, DateTime
.
Wenn Sie das Paket installiert haben, erhalten eine statische Standard-Klasse, um die Einstellungen für den Zugriff auf die wie folgt aussieht:
private static ISettings AppSettings
{
get
{
return CrossSettings.Current;
}
}
Sie können nun Ihre Einstellungen mit Schlüssel/Wert-Paare definieren und einen Standardwert definieren, das heißt:
private const string UserNameKey = "username_key";
private static readonly string UserNameDefault = string.Empty;
private const string SomeIntKey = "int_key";
private static readonly int SomeIntDefault = 6251986;
Und sie durch Eigenschaften abzurufen, wie folgt aus:
public static string UserName
{
get { return AppSettings.GetValueOrDefault<string>(UserNameKey, UserNameDefault); }
set { AppSettings.AddOrUpdateValue<string>(UserNameKey, value); }
}
public static int SomeInt
{
get { return AppSettings.GetValueOrDefault<int>(SomeIntKey, SomeIntDefault); }
set { AppSettings.AddOrUpdateValue<int>(SomeIntKey, value); }
}
Sie können Datenbindung auch in Xamarin.Forms verwenden, sodass Sie keinen redundanten Code benötigen. Ausführlichere Informationen finden Sie in der Dokumentation here.
Da Eigenschaften verwendet werden, können Sie selbst einen Code implementieren, um einen Back-End-Dienst aufzurufen und die Einstellungen dort zu speichern.
Mögliches Duplikat von [mehr als 80 Einstellungen für jeden Benutzer in einer Xamarin-Formularanwendung] (http://stackoverflow.com/questions/39964437/more-than-80-settings-to-store-for-each) -user-in-a-xamarin-forms-application) –
dup-link funktioniert nicht ... –