0

多くのユーザー設定を持つAndroidアプリケーションがあります。一部の設定はカスタムです。つまり、Preferenceクラスが値を少し変更します。ほとんどの設定にはデフォルトがあり、PreferenceManager.setDefaultValues()そのようなカスタム設定を尊重する呼び出しを介して適用されます。私のアプリケーションにはいくつかの一般的な使用シナリオがありますが、現在の設定のデフォルトはそのうちの1つだけをカバーしています。彼女がどのシナリオを好むかについて、用途を尋ねたいと思います。しかし、ユーザーの選択に基づいて、同じようにクリーンでシンプルな方法でデフォルトを適用する方法がわかりません。何か案は?

アップデート

デフォルトは、最初の実行時にのみ適用する必要があります。ユーザーは、アプリケーションの使用方法を尋ねられ、回答に基づいてデフォルトが適用されます。彼は後で各設定を個別に調整できるようになるため、後でデフォルトを再適用する必要はありません。そして、これは経験の少ないユーザーのためのヘルパーにすぎません。継続的な経験がないと一部の設定が明確ではないというフィードバックを受け取るため、これが必要です。

4

1 に答える 1

0

主な質問は、ユーザーがユースケース固有のデフォルトをいつ適用できるようにする必要があるか(最初はいつでも)、いつ適用されるか(元に戻すのは意味がありますか?など)です。

時間の経過とともに収集され、ユーザーが保持することを期待している基礎となるデータに関して依存関係がある可能性があると思います。

このような複雑な状況をサポートする場合は、モデルを3層として表示します。ユースケース固有のデフォルト値のセット、適用されるユースケース固有の変更のセット、および最終的な予測(デフォルト調整によって上書きされます)。ここでの目的は、ユーザーが個別の設定を失うことなく、元のユースケースに戻すことができることです。

アプリの性質についての深い知識がなくても、最初に考えただけです。

アップデート

あなたの説明に従って、私の提案は、ユースケースごとに1つの設定ファイルを使用し、PreferenceManager.setDefaultValues(Context、String、int、int、boolean)を呼び出すことです。

于 2013-01-22T11:47:30.233 に答える