2016-09-23 11 views
0

私のリストの各値/エントリに設定できるかどうかを尋ねたいのですが、それらを一度選択することができます。つまり、選択した場合、同じ値/エントリを使用するListPreferenceがさらにあります。最初のlistPreferenceの最初の値/エントリ、他のListPreferenceの最初の値/エントリを無効にします。ありがとうございました。SharedPreferenceのListPreference

答えて

0

最初の問題は、ListPreferencesの一部のアイテムを無効にすることです。これは、既定ではサポートされていません。 this approachを使用して、無効なアイテムをサポートするカスタムListPreferenceを作成することをお勧めします。

第二の問題は、あなたがそのためにあなたはすべてのListPreferencesで選択した項目についての情報を含むデータの同じセットを使用することがCustomListPreferenceAdapterコードを変更する必要があるいくつかのListPreferencesの間に選択した項目に関する情報を共有したいということです。したがって、おそらくListを使用する必要があります。項目はその選択についての情報も保持します(AdapterパターンはListView側で抽象化された選択から抽象化されていますが、選択情報をデータの一部にする必要があります) 。 ListPreference(または一般的な場合はListView)が選択された場合、他のListPreferencesのアダプタに通知して選択データを再読み込みし、関連する項目を無効にする必要があります。

私はあなたのために全体のコードを書いて少し怠惰です))ヒントとしてそれを使用してください。

+0

選択情報を自分のデータの一部にすることは望ましくありません。ちょうど値、あなたが言ったことをやってみてください。ありがとうございました。 –

関連する問題