我有一个 MainActivity 包含对 FragmentAdapter 和 ViewPage 的引用。在此活动中,我将两个片段添加到列表,然后将此列表添加到 FragmentAdapter:
fragments.add(Fragment.instantiate(this, Fragment1.class.getName()));
fragments.add(Fragment.instantiate(this, Fragment2.class.getName()));
现在,我可以成功地滑过这两个片段。实际上,它们都是ListFragments。在每个片段中,我列出了许多项目。
对于每个项目,我可以单击按住,然后会出现一个菜单项。
出现的问题是,在 Fragment1 上,在 Fragment1public boolean onContextItemSelected(MenuItem item)
中成功调用了(在此片段中添加了断点)。
在 Fragment2 中执行相同的测试时,会调用来自 Frag1 的断点,而不是来自 Frag2。而且,显然,来自 Frag1 的数据显示在 Frag2 中。
有人见过这个吗?
我在两个片段中实例化菜单,如下所示:
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(Menu.NONE, R.id.share, Menu.NONE, getString(R.string.share));
menu.add(Menu.NONE, R.id.delete, Menu.NONE, getString(R.string.delete_all));
}
问候, 费利佩