我的问题是,我有一个 TabActivity,它现在有 4 个选项卡。第一个选项卡是一个特殊的详细信息选项卡,用户可以在其中修改一些数据。
问题是,如果我为 Activity 添加 OptionsMenu,则 OptionsMenu 会出现在每个选项卡上。我试图在onCreateOptionsMenu中检查当前的mTabHost.getCurrentTabTag()但这并没有改变。那么,该怎么做呢?
(以下代码,仍然在每个选项卡上显示 OptionsMenu)
public boolean onCreateOptionsMenu(Menu menu) {
if(mTabHost.getCurrentTabTag()==getString(R.string.tab_details)) {
boolean result = super.onCreateOptionsMenu(menu);
menu.add(0, EDIT_ID, 0, R.string.menu_edit).setIcon(R.drawable.edit);
return result;
}
return true;
}
public boolean onMenuItemSelected(int featureId, MenuItem item) {
switch (item.getItemId()) {
case EDIT_ID: {
Toast.makeText(this, "o.O", Toast.LENGTH_LONG).show();
}
}
return super.onMenuItemSelected(featureId, item);
}