2016-10-11 3 views
-2

page screenshotSaveユーザ設定(切り替えを切り替える)Xamarinは、我々は、私は、各ユーザーの設定(トグルスイッチの選択)を保存するPCL xamarinフォームアプリケーション でページ考えてみましょう

を形成: を - ローカルに保存し、 remotly

+0

[Xamarinフォームアプリケーションの各ユーザーに保存する80以上の設定]の重複の可能性あり(http://stackoverflow.com/questions/39964437/more-than-80-settings-to-store-for-each -user-in-a-xamarin-forms-application) –

+0

dupのリンクが機能しません... –

答えて

0

おそらく、これを実装する最も速い方法は、James MontemagnoのSettings Pluginを使用することです。これはNuGetパッケージとして提供されています。共有とプラットフォームの両方のプロジェクトにインストールすることを忘れないでください。

かなりわかりやすいはずです。パッケージをインストールすると、すでにヘルパークラスが作成され、readmeファイルが表示されます。

それはさ、単純型でのみ動作します:BooleanInt32Int64StringSingle(フロート)、GuidDoubleDecimalDateTime

あなたはこのようになりますどのあなたの設定にアクセスするには、デフォルトの静的クラスを取得し、パッケージインストール時:

private static ISettings AppSettings 
{ 
    get 
    { 
    return CrossSettings.Current; 
    } 
} 

をあなたは今、すなわち、キー/値のペアを使用して設定を定義し、デフォルト値を定義することができます。

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; 

そして、このように、性質によってそれらを取得:

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); } 
} 

Xamarin.Formsでデータバインディングを使用して、冗長コードを必要としないようにすることもできます。詳細については、hereのドキュメントを参照してください。

プロパティなどを使用しているので、バックエンドサービスを呼び出してそこに設定を保存するコードを自分で実装することができます。

+0

あなたの答えはありがたいですが、何度も同じ答えを読んでいます!私の場合、私は2つの問題があります: - 私はブール、Int32、Int64、文字列、シングル(浮動小数点数)、Guid、Double、Decimal、DateTimeではなく、トグルスイッチ(オンまたはオフ)を保存する必要があります。 - これらは16以上です(より正確には80) –

+0

スイッチはオン/オフが真/偽ですので、ブール値ですか?そして80のプロパティを作成する必要があります。それが可能な限りエレガントな気がしませんが、私は他の良い解決策については本当によく分かりません。辞書や何かにそれらを格納するが、あなたは自分のように設定を管理する多くをしなければならないだろう –

関連する問題