Toolbar
のMenuItem
からPopupMenu
を表示する必要があるアプリケーションをビルドしています。問題は、MenuItem
で2回クリックして、PopupMenu
が表示されることです。MenuItemを2回クリックする必要があります。
マイコード:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.lobby_activity_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
mFilterMenuItem = findViewById(R.id.action_search_filter_menu_item);
switch (item.getItemId()) {
case R.id.action_search_menu_item: {
Toast.makeText(this, "Search button clicked", Toast.LENGTH_SHORT).show();
return true;
}
case R.id.action_search_filter_menu_item:{
mFilterMenuItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TileMenu tileMenu = new TileMenu(GuestActivity.this, v, R.menu.filter_menu);
Log.e("MENU ITEM", mFilterMenuItem.toString());
}
});
return true;
}
default: {
return super.onOptionsItemSelected(item);
}
}
}
1回のクリックで起動するためにそれを修正する方法は?
とコードのあなたのブロックを交換してみ@Tasdメニュー項目 - クリックされた項目は、メソッド引数 'onOptionsItemSelected(MenuItem item) 'で提供された' MenuItem'です。 –
あなたは日を節約してくれてありがとう!!! –