问题标签 [switchpreference]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
71 浏览

android - 使用 switchpreferenceCompat 设置活动

我有一个具有多个 SwitchpreferenceCompat 的首选项屏幕。我需要在 settingActivity 中让用户选择主题变化、振动等。任何人都可以通过单击设置活动中的开关来帮助我设置振动或主题更改。我在我的 settingActivity 片段中使用了它,但是当我单击设置活动时,应用程序停止

`res/xml/root_preference.xml

用户单击应用程序上的振动必须在活动中单击按钮时振动。我怎样才能做到这一点?

在此处输入图像描述

0 投票
1 回答
73 浏览

android - 启用开关时如何更改 SwitchPreference 文本颜色?

见截图

我想将“已启用”的文本颜色更改为蓝色

这是我的xml

0 投票
1 回答
312 浏览

androidx - androidx 中的自定义 SwitchPreferenceCompat

我正在尝试将首选项屏幕中的默认开关拇指更改为我的自定义。我尝试了在这里找到的不同解决方案,但没有一个有效。我最后一次尝试是创建自定义布局,但问题是我无法正确地将开关添加到该布局。由于 id(@android:id/switch_widget 需要 API 级别 24(当前最小值为 21)或其他建议的 id:无法解析符号 '@android:id/switchWidget'),无法真正添加 androidx.appcompat.widget.SwitchCompat )。root_preferences.xml(部分):

switch_preference_compat.xml:

我尝试了样式,但也效果不佳。我希望我的拇指看起来像这样[我的自定义开关][1] [1]:https://i.stack.imgur.com/Js5vb.png

0 投票
0 回答
18 浏览

repeat - 无障碍模式重复

我在SwitchPreference开启和关闭的时候加载了不同的布局,summa在开启的时候有倒计时,但是当我开启Accessible模式时,倒计时屏幕上的文字刷新,导致重复播放。我在 onPreferenceChange() 中使用 setLayoutResource() 来加载不同的布局。

0 投票
0 回答
28 浏览

android - Android SwitchPreferenceCompat 切换时点击底层背景高亮显示灰色如何停止?

我环顾四周,看到这个问题被问过一次,但没有答案。如果您设置 SwitchPreferenceCompat 如下:

当在开关下的背景上点击它时,它会突出显示为灰色,看起来很糟糕,有人可以告诉我如何阻止我已经尝试了很长时间的这种情况。

点击时的灰色背景应保持全白

0 投票
1 回答
45 浏览

android - 如何检查 SwitchPreference 的当前状态?

SwitchPreference我有一个SettingsFragment.kt根据它是打开还是关闭来更改图标和标题的。

这是代码:

但是,此代码有效,假设用户单击SwitchPreference关闭,离开SettingsFragment并返回它。它会显示SwitchPreference关闭,但标题和图标将不正确。正确的图标和标题将是我在else上面声明中的代码。

SwitchPreference用户进入SettingsFragment. 我想检查一下,如果SwitchPreference关闭,我可以以编程方式设置正确的图标和标题。

0 投票
0 回答
19 浏览

android - 如何区分用户触摸不是切换开关的 SwitchPreference 区域和切换开关的区域?

SettingsFragment当用户触摸 a 时,我有以下内容SwitchPreference

基本上,我希望在用户触摸SwitchPreference不是切换开关区域的区域时执行某个操作,并在触摸切换开关区域时执行不同的操作。我注意到的是,SwitchPreference用户触摸区域的哪个位置并不重要。它总是会触发OnPreferenceClickListenerandOnPreferenceChangeListener并改变 的状态SwitchPreference,因此这两个函数都会被执行。

如何区分用户触摸SwitchPreference不是拨动开关的区域和用户触摸拨动开关?当用户没有专门触摸切换开关时,我不希望切换开关改变状态。

0 投票
1 回答
114 浏览

android - 在 kotlin 的 settingsFragment 中更改为暗模式

我想对我的应用程序进行小幅升级,并且希望在按下 SwitchPreference 后主题更改为暗模式。我需要一个详细的指南或有人向我解释如何做到这一点。如果我只是在 SettingsFragment 中学习做某事,但对我来说并不容易,请帮忙。如果您不明白问题,请写在评论中,我会尽力解释一切,以便帮助是最好的

0 投票
1 回答
62 浏览

android - 如何检查 SwitchPreference 的当前状态?

我有一个SwitchPreferenceCompat,我想说如果启用了切换首选项显示 Toast(启用了切换首选项),否则它再次禁用显示 Toast(禁用了切换首选项) 有一些这样的问题,但没有一个对我有用。

这是 XML:

和设置片段:

相关问题

0 投票
1 回答
41 浏览

android - Android:更新应用程序时 PreferencesActivity onCreate 上的 ClassCastException(不是第一次运行)

我即将启动我的应用程序的更新,但遇到了一个问题。

其中一个首选项类已从 CheckBox 更改为 Switch,现在以前安装该应用程序的用户在尝试访问 PreferenceActivity 时遇到了崩溃。

这是我的堆栈跟踪:

问题是,以前,CheckBox 值是字符串格式,所以现在它们被迁移到布尔值,当尝试获取设置值时会崩溃。

不幸的是,StackTrace 没有给我有用的信息,因为它在 onCreate 而不是在特定行中崩溃。

我尝试在启动时清除所有 SwitchPreference 值无济于事:

我知道一种解决方案是“强制”用户转到“应用程序”>“清除应用程序数据”,但不想结束这样做。

我期望的是一种方法来重置旧的 CheckBoxes 值并用新的 SwitchPreferences 替换它们,而不要求使用来清除数据。

对于新用户,该应用程序运行良好。

这是我的 Preferences.xml 文件:

SettingsActivity onCreate: