我正在尝试使用此命令创建一个preferenceScreen
PreferenceScreen screen= (PreferenceScreen)getPreferenceScreen().findPreference(KEY);
并且错误信息是:“无法转换的类型,无法将android.support.v7.preference.Preference转换为android.preference.preferenceScreen”
有没有办法解决它?谢谢!
更新:这是我编写的测试代码的一部分
ArrayList<String> cmds = new ArrayList<String>() {{
add("A");
add("B");
add("C");
}};
for (String cmd : cmds) {
CheckBoxPreference cpref = new CheckBoxPreference(getActivity().getApplicationContext());
cpref.setTitle(cmd);
cpref.setKey("The Name");
cpref.setChecked(true);
cmdScr.addPreference(cpref);
}
现在最后一行“addPreference”给我一个错误
答案 0 :(得分:0)
findPreference
返回android.support.v7.preference.Preference
而不是PreferenceScreen
。你需要做的是:
Preference screen = (Preference) getPreferenceManager().findPreference(KEY);
将Preference
作为支持库中的{1}}导入:
import android.support.v7.preference.Preference;
要回答您编辑过的问题,只需访问this link即可了解您的错误。将类别添加到屏幕,然后将首选项添加到类别。