窗口回调 onMenuOpen 和 onPanelClosed 用于使用工具栏膨胀的菜单



我在活动中使用视图寻呼器来显示一些片段。每个片段都有一个单独的工具栏,其中包含单独的菜单选项。

实现:

toolbar.inflateMenu(R.menu.my_xyz_menu_options(;toolbar.setOnMenuItemClickListener(this::onMenuOptionsItemSelected(;

使用单个片段,使用 setHasOptionsMenu(true( 并从函数创建菜单:onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInfwell infwell(并设置setSupportActionBar(myToolbar(帮助我从MenuOpened(int featureId,Menu menu(和onPanelClosed(int featureId,@NonNull菜单菜单(的活动函数中收回调用

但是,当视图页机将偏移限制设置为仅 1 时,会导致此解决方案出现问题。

需要使用我的工具栏菜单获取 onMenuOpened(int featureId,菜单菜单(和 onPanelClosed(int featureId,@NonNull 菜单菜单(的回调

使用与

问题中描述的单个片段相同的实现,以及页面更改时片段的

后续实现:
 setSupportActionBar(myToolbar) 

但是,由于在首先滚动的任何视图寻呼机位置不显示片段中的菜单,这有时会很糟糕。

最新更新