我正在玩别人为我的应用程序设置的设置,我想在用户无法正确连接到开发服务器时取消选中CheckPreferenceBox。 我用这种方式调用我的CheckPreferenceBox:
CheckBoxPreference mCheck = (CheckBoxPreference) findViewById(R.id.prefs_dev_mode);
mCheck.setChecked(false);
以下是我的.xml文件中与之相关的部分:
<CheckBoxPreference
android:id="@+id/prefs_dev_mode"
android:key="SP_DEV_SERVER"
android:title="@string/prefs_server_title"
android:summary="@string/prefs_server_summary"
android:defaultValue="false"/>
你看到错误是什么? 感谢
答案 0 :(得分:1)
您面临的问题是CheckBoxPreference
实际上不是视图。这是一个Preference。因此findViewById函数不适合你。
您无法像View一样与此元素进行互动。
如果你想取消选中它,你应该这样:
CheckBoxPreference pref = (CheckBoxPreference) getPreferenceScreen().findPreference("SP_DEV_SERVER");
pref.setChecked(false);