我正在尝试将SeekBarPpreferences实现到我的首选项XML中。我尝试使用MrBIMC搜索栏(https://github.com/MrBIMC/MaterialSeekBarPreference(,它大部分有效,但由于它很旧,我不得不提出一些丑陋的解决方案。
<SeekBarPreference
android:defaultValue="5"
android:dependency="a_different_preference"
android:key="seekbar_key"
android:max="40"
android:summary="Select your value"
android:title="Seekbar value"
app:iconSpaceReserved="false"
asp:min="1" />
上面的代码基本上是我想要的,除了我不知道如何添加测量值。
sample:msbp_measurementUnit="km"
以上是 MrBIMC 库中用于在值后设置单位的内容,但无法在本地实现任何类似的目标。
最后,在我的首选项.xml中,我收到错误"此处不允许元素搜索栏首选项">,这会阻止 IDE 向我显示任何建议以获得我想要的东西。
编辑:自从问这个问题以来,我了解到原生搜索首选项似乎没有能力在其值之后添加测量单位......那么,我究竟如何创建一个外观和行为相同但能够输入测量单位的自定义视图呢?
我发现的这个堆栈溢出问题使用了 SeekBarPpreferences作为如何创建自定义首选项的示例: 创建自定义首选项
除此之外,在 XML 文件中,您只需向seekbar_preference.xml添加一个微调器即可。
或者,一个更简单的解决方案(但不是您想要的(是在您的首选项.xml文件中添加一个单独的ListPpreferences,并从那里输入首选的测量单位。