我有多个活动片段,在抽屉项目上单击“我替换片段”。在一个片段中,我有一个ListView。在此列表中,用户可以选择多个项目。我有一个问题,当我选择列表项时,又添加了一个操作栏。我不要那个动作栏。
这是我的截图
我想合并它们或在选择多个选项时隐藏工具栏。
我们如何解决这个问题
这是我的代码
BookingFragment.java
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_booking, container, false);
setHasOptionsMenu(true);
lv_itemRateList = (ListView) v.findViewById(R.id.lv_itemRateList);
lv_itemRateList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
lv_itemRateList.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {
@Override
public void onItemCheckedStateChanged(ActionMode actionMode, int i, long l, boolean b) {
final int checkedCount = lv_itemRateList.getCheckedItemCount();
actionMode.setTitle(checkedCount + " Selected");
rateListAdapter.toggleSelection(i);
}
@Override
public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
actionMode.getMenuInflater().inflate(R.menu.context_main, menu);
return true;
}
@Override
public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
return false;
}
@Override
public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.menu_email:
SparseBooleanArray selected = rateListAdapter.getSelectedIds();
ArrayList<RateList> temp = new ArrayList<RateList>();
for (int i = 0; i < selected.size(); i++) {
temp.add(rateListAdapter.getItem(selected.keyAt(i)));
}
Log.e("array",""+temp);
//to do code.
actionMode.finish();
return true;
default:
return false;
}
}
@Override
public void onDestroyActionMode(ActionMode actionMode) {
rateListAdapter.removeSelection();
}
});
return v;
}
这是我的活动主题
styles.xml
<style name="myTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="windowActionModeOverlay">true</item>
</style>
请帮忙。
最佳答案
您可以尝试类似的东西
隐藏getActivity().getActionBar().hide();
显示getActivity().getActionBar().show();
关于android - Android:无法隐藏工具栏或操作栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40886786/