16

私は現在ドロイドアプリに取り組んでおり、別のプリファレンスの値に基づいてプリファレンスを有効または無効にできる方法があるかどうか疑問に思っていました。

たとえば、checkbox_pref1が有効になっている場合は、option2 / 3/4が有効になり、checkbox_pref1が無効になっている場合は、option2 / 3/4が自動的に無効になります。これは、これを実現するXML属性ですか、それとも私が行うものですか。この効果を実現するには、コーディングする必要があります。

あなたが提供できるどんな助けにも感謝します。

4

2 に答える 2

31

dependencyこれは、属性を使用して行うことができます。XMLで、、、および設定Preferenceに次の行を追加します。checkbox_pref2checkbox_pref3checkbox_pref2

android:dependency="checkbox_pref1"

便利なリンク:

Androidクイック設定チュートリアル

Android設定ドキュメント(#dependency)

于 2012-09-13T21:53:53.217 に答える
8

これは、メインのチェックボックス設定がチェックされるまでPreferenceScreenを無効にする私の例です-kcoppockに感謝します!申し訳ありませんが、私の担当者はあなたを持ち上げるのに十分な高さではありません。

        <CheckBoxPreference
            android:title="@string/Day1_title"
            android:summary="@string/Day1_summary"
            android:key="pref_Day1" />
        <PreferenceScreen
            android:dependency="pref_Day1"
            android:key="day1_screen"
            android:summary="@string/Extra_Options">
            <EditTextPreference
              android:title="@string/Day1_title"
              android:summary="@string/Workout_Date"
              android:key="Day1_date"/>
            <EditTextPreference
              android:title="@string/Comment_title"
              android:key="Day1_comment"/>
        </PreferenceScreen>
于 2013-11-21T11:50:55.503 に答える