android - 当其他首选项被禁用时,如何在我的 android 应用程序中启用首选项?

标签 android android-preferences

我已使用 PreferenceActivity 在我的 android 应用程序中设置偏好。我希望当另一个偏好说“pref 1”未被选中时启用一个偏好说“pref 2”,而当“pref 1”被选中时禁用“pref 2”。 即与 android:dependancy 属性完全相反。

我该怎么做?

最佳答案

是的,可以开箱即用。 假设您想在 pref1 关闭时禁用 pref2
这是为 pref1 输入的代码(偏好 xml 布局):

<CheckBoxPreference
    android:title="Pref1"
    android:key="pref1">
</CheckBoxPreference>

这里是 pref2 的代码(偏好 xml 布局):

<EditTextPreference
    android:dialogMessage="Pref 2 dialog"
    android:title="Pref2"
    android:key="pref2" 
    android:dependency="pref1">
</EditTextPreference>

就像 sigmazero13 所说,默认情况下 disableDependentsState 为 false,因此您不需要将其包含在 pref1 属性中。

关于android - 当其他首选项被禁用时,如何在我的 android 应用程序中启用首选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2672922/

相关文章:

android 不清除 sharedpreference

android - 为 Ionic 构建 Android 平台时产生 EACCESS 错误

android - Kotlin : getResources() on a null object reference

BroadcastReceiver 中的 android volatile 变量

android - 无法在 Wear OS 上注册新磁贴

android - 使用 Gradle 构建时获取类缓存错误

android - DialogPreference.onDialogClosing(boolean) 总是收到 positiveResult == false

android - 对话框首选项中的自定义 View

Android AppCompat PreferenceActivity - 没有子类别/标题的平面设置列表

android - 'strong' 对对象的引用意味着什么,为什么我们应该将 OnSharedPreferenceChangeListener 的引用存储在对象的数据中?