【发布时间】:2014-11-15 22:15:33
【问题描述】:
我在 viewpager 中有三个片段。
其中两个片段有自己的 onCreateOptionsMenu 方法版本:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
// Set up 1 action button
inflater.inflate(R.menu.home_snapshot_add, menu);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
// Set up 2 action buttons
inflater.inflate(R.menu.home_snapshot_send, menu);
}
home Activity 有一个基本的 onCreateOptionsMenu 方法:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return false;
}
在onCreate方法中,每个片段都会调用该方法:
setHasOptionsMenu(true);
每个菜单项都有标签:
android:showAsAction="always"
似乎当我打开 Activity 时,所有三个按钮都出现了。 但是,当我滚动浏览它们时,错误的会神奇地消失。 感觉就像活动在创建活动时调用每个片段的选项菜单,然后在我左右滑动时适当地更改菜单。 我检查了菜单,但不确定出了什么问题。 你认为我需要检查什么吗?我有点想不通。
谢谢!
【问题讨论】:
标签: android android-fragments android-actionbar android-optionsmenu