我在活动中使用视图寻呼机来显示一些片段。每个片段都有一个带有单独菜单选项的单独工具栏。
实施:
toolbar.inflateMenu(R.menu.my_xyz_menu_options); 工具栏.setOnMenuItemClickListener(this :: onMenuOptionsItemSelected);
使用单个片段,使用setHasOptionsMenu(true)并从函数创建菜单: onCreateOptionsMenu(@NonNull菜单菜单,@NonNull MenuInflater充气器) 并设置setSupportActionBar(myToolbar)帮助我从活动功能onMenuOpened(int featureId,Menu menu)和onPanelClosed(int featureId,@NonNull Menu menu)撤回呼叫
但是,仅将view-pager的偏移量限制设置为1会导致此解决方案出现问题。
需要使用我的工具栏菜单获取onMenuOpened(int featureId,Menu menu)和onPanelClosed(int featureId,@NonNull Menu menu)回调的方法
答案 0 :(得分:0)
对问题中描述的单个片段使用了相同的实现,并在换页后的片段中进行了修改:
<svg id="shell-svg" height="0" width="0" style="position:absolute;pointer-events:none">
<defs>
<filter id="shapeshift" color-interpolation-filters="sRGB" x="0%" y="0%" height="100%" width="100%">
<feColorMatrix id="mat" type="matrix">
<animate
attributeType="XML"
id="fe1"
attributeName="values"
dur="4s"
repeatCount="indefinite"
values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0;0.8 0 0.04 0.04 0 0 0.8 0 0 0 0 0 0.8 0 0 0 -2 0 1 0;1 -0.6 0.7 0.9 0 0 1.2 0 0 0 0 0 1 0 0 0 0 0 0.4 0;1 0.2 0 0 0 0 1 0 0 0 0 0 1 0 0 -2.6 0 0 1 0;1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"
keyTimes="0;0.5;0.75;0.85;1"
begin="0s"/>
</feColorMatrix>
</filter>
</defs>
</svg>
<div id="shell-bg" class="filtered"></div>
然而,这有时会由于在滚动页面的位置不显示菜单而变得很糟糕。