我有很多这样的标签:
TabHost th;
TabSpec spec;
th = (TabHost) findViewById(R.id.tabhost_template_two_tabs);
th.setup();
// all tab
spec = th.newTabSpec("All");
spec.setIndicator("All");
spec.setContent(R.id.tab_template_two_tabs_all);
th.addTab(spec);
// favorite tab
spec = th.newTabSpec("Favorite");
spec.setIndicator("Favorite");
spec.setContent(R.id.tab_template_two_tabs_favorite);
th.addTab(spec);
对于我想要添加菜单的每个标签,请问怎么样?
答案 0 :(得分:1)
Tab
中的每个TabHost
都有一个从0开始的数字,因此您必须使用int currentTab = th.getCurrentTab();
了解您现在所处的标签,然后使用{清除上一个菜单{1}}然后使用menu.clear()
inflater.inflater(menuID, menu)
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflater = getMenuInflater();
int currentTab = th.getCurrentTab();
Toast.makeText(getApplicationContext(), currentTab+"", Toast.LENGTH_SHORT);
if (currentTab == 0){
menu.clear();
inflater.inflate(R.menu.first, menu);}
else{
menu.clear();
inflater.inflate(R.menu.second, menu);}
return super.onPrepareOptionsMenu(menu);
}
无法帮助您