问题描述
我正在尝试显示和隐藏适配器类中的菜单和工具栏。元素显示正常,但没有按预期隐藏。这是我的实现
holder.itemView.setonLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
@Override
public boolean onCreateActionMode(ActionMode mode,Menu menu) {
MenuInflater menuInflater = mode.getMenuInflater();
toolbar.setVisibility(View.GONE);
menuInflater.inflate(R.menu.menu,menu);
return true;
}
public void onDestroyActionMode(ActionMode mode) {
mode.getMenu().clear();
toolbar.setVisibility(View.VISIBLE);
mode.finish();
}
我想隐藏在 onCreateActionMode() 方法中膨胀的菜单。“菜单”不会消失,因为它说 mode.getMenu().clear() 是在空对象上实现的。如何在 onDestroyActionMode 中隐藏菜单?任何建议都会有所帮助谢谢。
解决方法
将此代码放在您的按钮单击侦听器中。它肯定会起作用。if (getSupportActionBar() != null) {getSupportActionBar().hide();} 就像这样。
holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
if (getSupportActionBar() != null) {
getSupportActionBar().hide();
}
return false;
}
});