我在ViewPager中构建了一些带有碎片的Android应用程序(最低SDK级别10,姜饼2.3.3)。我正在使用ActionBarSherlock创建一个ActionBar,并使用android-viewpagertabs为ViewPager添加选项卡,就像在Market客户端中一样。使用ViewPager和片段复制菜单项
我有一个全局菜单项,我想要显示在每个选项卡/片段上。在三个选项卡中的第一个上,我希望有两个额外的菜单项。
但现在两个陌生的事情发生了:
首先,如果我启动应用程序,一切似乎都很正常,我可以看到在第一页上的所有三个菜单项只有一个项目,如果我刷到第二和第三个标签。但是如果我滑回第三个选项卡的第二个选项卡,我可以再次看到所有三个不应该发生的项目。如果我滑回第一个,然后又回到第二个标签,一切都很好。
另一个奇怪的是,我每次旋转设备时,片段中的菜单项都会再次添加,即使它们已经在菜单中。从位于freenode /#安卓
public class SubscriptionGridFragment extends Fragment {
private GridView subscriptionList;
private SubscriptionListAdapter adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
// ...
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.subscription_list, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// ...
}
}