gpt4 book ai didi

android - fragment 内 fragment 中的上下文菜单(ActionMode)

转载 作者:行者123 更新时间:2023-11-30 04:11:59 25 4
gpt4 key购买 nike

我在 Activity 的 Fragment A 中得到了 Fragment B。按预期工作。单击 fragment B 中的项目时,我想显示 contextual menu栏。

我正在与 ActionbarSherlock 合作。我在 Fragment B 中做了什么:

private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() {

@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
MenuInflater inflater = mode.getMenuInflater();
inflater.inflate(R.menu.entry_list_context_menu, menu);
return true;
}

@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
// make sure no item is selected when bar is shown
adapter.clearSelection();
adapter.notifyDataSetChanged();
return false;
}

@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
Log.d("EntryList", "Item '" + item.getTitle()
+ "' clicked [onActionItemClicked()]");
return true;
}

@Override
public void onDestroyActionMode(ActionMode mode) {
adapter.clearSelection();
adapter.notifyDataSetChanged();
contextualMode = null;
}
};
private ActionMode contextualMode;

@Override
public void onItemClick(AdapterView<?> parentView, View itemView,
int index, long id) {
DocumentEntity entry = (DocumentEntity) itemView.getTag();
// something went wrong
if (entry == null) {
Log.e("EntryList", "Tag-Less item clicked [onItemClick()]");
return;
}

if (contextualMode != null) {
Log.d("EntryList",
"contextualMode is not yet initialized [onItemClick()]");
contextualMode = getSherlockActivity().startActionMode(
mActionModeCallback);
} else {
Log.d("EntryList",
"contextualMode already initialized [onItemClick()]");
}

entry.setSelected(!entry.isSelected());
Log.d("EntryList", "entry.selected set to " + entry.isSelected()
+ " [onItemClick()]");
}

选择效果很好,但没有显示上下文操作栏。调试结果为:

contextualMode already initialized [onItemClick()] entry.selected set to 'true' [onItemClick()]

没有设置contextualMode的其他位置...

最佳答案

I got a Fragment B in a Fragment A...

Android 不支持将 fragment 嵌入到另一个 fragment 中。对不起。这让我相信你的问题超出了你的上下文 ActionBar 没有被显示的事实。我建议您澄清您的原始帖子。

关于android - fragment 内 fragment 中的上下文菜单(ActionMode),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10718137/

25 4 0