ваш Java-код, где вы управляете checkbox
нажмите событие
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
MenuItem check = menu.findItem(R.id.action_checkbox);
CheckBox c_box =(CheckBox) check.getActionView();
c_box.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
if(b){
Toast.makeText(getActivity(), "checked",
Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getActivity(), "unchecked",
Toast.LENGTH_SHORT).show();
}
}
});
return true;
}
ваше меню выглядит ОК
<item
android:id="@+id/action_checkbox"
app:actionViewClass="android.widget.CheckBox"
android:title="@string/action_check"
app:showAsAction="always"
/>
надеюсь, что он работает .. дайте мне знать, если вы сталкиваетесь с любой проблемой.
Спасибо за ваш ответ, но где в onOptionsItemSelected? –
Если вы спрашиваете, где использовать этот код, вы можете использовать его в любом месте, потому что 'findViewById()' будет работать в любом контексте. –
Это пункт меню «Действие». Итак, он не будет работать нигде :) –