私はこれを私のmenu_check.xmlに持っていますが、チェックをクリックしても何も起こらないので、トーストは決して表示されません...何が問題なのですか?おかげでたくさんのチェックボックスのメニュー項目が機能しない
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item
android:id="@+id/action_selecciontodo"
android:title="@string/check"
android:checkable="true"
app:actionViewClass="android.widget.CheckBox"
app:showAsAction="always" />
</menu>
と、この私のJavaクラスの
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_check, menu);
checkBox = (CheckBox) menu.findItem(R.id.action_selecciontodo).getActionView();
checkBox.setText("Select all");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_selecciontodo:
CheckBox checkBox= (CheckBox) item.getActionView();
if (checkBox.isChecked())
Toast.makeText(getApplicationContext(), "You selected all", Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
uが私の答えに確認したのですか? http://stackoverflow.com/a/37203577/3981656 –
ありがとうございます!しかし私のチェックが私のメニューに表示されている必要があります。 これは、私がapp:actionViewClass = "android.widget.CheckBoxを使用する理由です。あなたの例では、私のメニューで私のチェックを見ることができますか?app:showAsAction =" always "は機能しません。私の小切手を見てください。 –