我目前正在开发一个 droid 应用程序,并且想知道是否有一种方法可以根据另一个首选项的值启用或禁用首选项。
例如,如果我有 checkbox_pref1,如果启用,则启用 option2/3/4,如果禁用 checkbox_pref1,则 option2/3/4 自动变为禁用,或者是否有 XML 属性可以完成此操作,或者我会这样做需要代码来实现这个效果。
感谢您的任何帮助,您可以提供。
我目前正在开发一个 droid 应用程序,并且想知道是否有一种方法可以根据另一个首选项的值启用或禁用首选项。
例如,如果我有 checkbox_pref1,如果启用,则启用 option2/3/4,如果禁用 checkbox_pref1,则 option2/3/4 自动变为禁用,或者是否有 XML 属性可以完成此操作,或者我会这样做需要代码来实现这个效果。
感谢您的任何帮助,您可以提供。
您可以使用dependency
属性执行此操作。在您的Preference
XML 中,将以下行添加到您的checkbox_pref2
、checkbox_pref3
和checkbox_pref2
Preferences 中:
android:dependency="checkbox_pref1"
有用的链接:
这是我在选中主复选框首选项之前禁用 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>