我想添加一个 SeekBarPreference 对我 安卓设置 PreferenceScreen.例如,当我使用EditTextPreference时,一切都能正常工作,所以肯定是SeekBar引起了问题。
第一个问题:我可以使用 app:min=""
但 app:max=""
似乎并不存在... 我猜这是API中的一个bug,因为我在文档中找到了这句话。
其他SeekBar的特定属性(如标题,摘要,默认值,最小,最大)可以直接在偏好小部件布局上设置。
第二个问题:当我使用下面的代码时,我的应用程序在打开设置时崩溃,并出现以下信息。Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
我的代码:
public class PreferenceFragment extends PreferenceFragmentCompat {
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
setPreferencesFromResource(R.xml.settings, rootKey);
}
}
我的代码:
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
<PreferenceCategory
app:key="category_playback"
app:title="Playback">
<SeekBarPreference
app:defaultValue="15"
app:key="skip_time"
app:min="5"
app:summary="Seconds to skip"
app:title="Skip time" />
</PreferenceCategory>
</PreferenceScreen>
谁有办法解决这个问题?如果没有解决方法,我会尝试用程序实现。
谢谢。
对于你的 第一个问题 使用。
android:max="10"
为您 第二个问题,尝试清除你的应用程序数据。