2

我在它的 oncreate 中向我的活动添加了一个片段。单击按钮时,我必须将相同的片段(新数据将加载并显示在片段中)添加到活动中。我也在加载数据后调用 setHasOptionsMenu(true) 。片段中显示的数据必须通过单击操作栏上的共享图标来共享。

在活动类中添加片段:

    FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); 
    ft.add(R.id.myFragContainerLayout, myFrag);
    ft.addToBackStack(null);
    ft.commit();

片段中的选项菜单:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    menu.clear();
    inflater.inflate(R.menu.share_menu, menu);
    super.onCreateOptionsMenu(menu, inflater);
}

片段正在添加,我可以毫无问题地回堆片段,但是当我单击操作项时,第一个片段中显示的数据正在共享。如果我使用下面的行(即用其他片段替换当前片段而不是添加),那么一切正常,但片段在按下后再次加载。我哪里错了?请帮我。

 ft.replace(R.id.myFragContainerLayout, myFrag);
4

1 回答 1

1

onOptionsItenSelected() 正在返回 return super.onOptionsItemSelected(item); 改为返回真;而已。修复了问题

于 2014-03-03T18:03:12.920 回答