2
我有一个复选框的选项菜单。当用户点击时,我可以选中并取消选中复选框。但是,我使用SharedPreferences来存储这个复选框的值,所以我还需要做的是用SharedPreferences的pref值中存储的任何东西来初始化复选框,例如,如果pref是true/false,则将复选框设置为checked /选中。如何初始化选项菜单复选框
我想我需要把一些代码放到我的onCreateOptionsMenu中,而且我显然需要使用.setChecked(首选项)设置复选框,但是如何以编程方式引用复选框本身?
菜单使用创建:
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.options_menu, menu);
return true;
}
复选框可以使用选中/取消:
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.two_week:
if (item.isChecked()) {
item.setChecked(false);
}
else {
item.setChecked(true);
}
return true;
default:
return super.onOptionsItemSelected(item);
}
}
完美,这正是我一直在寻找 - 感谢萨姆。 –