菜单没有出现在android中

时间:2013-07-29 06:09:07

标签: android menu

我有以下代码,我无法理解为什么我的代码没有显示菜单。如果活动包含数据,condition_true = true则为condition_true = false。我可以清楚地看到控制器会进入menutag,条件也是如此。即使我在日志中也得到Inflated字符串。但仍然没有显示菜单。我在link 1link2等广告中看过很多帖子,但这并没有解决我的问题。有人可以帮我解决这个问题吗?

@Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        menu.clear(); //Clear view of previous menu
        MenuInflater inflater = getSupportMenuInflater();
        Log.d("menutag", condition_true);
        if(condition_true)
        {
             inflater.inflate(R.layout.menu, menu);
             Log.d("menutag","Inflated");
        }

        return super.onPrepareOptionsMenu(menu); // replaced this with true, but no use.
    }

2 个答案:

答案 0 :(得分:2)

你必须在xml中添加options属性..否则你可以这样编程:

public boolean onCreateOptionsMenu(Menu menu){
    getMenuInflater().inflate(R.menu.yourmenuxmlfilename, menu);
    return true;
 }
 public boolean onOptionsItemSelected(MenuItem item){
    switch(item.getItemId){
    case R.id.item1:
       // what you want to do with first button
       break;
    case .....
       break;
    }
    return true;
}

答案 1 :(得分:0)

也许你要覆盖onKeyDown并且它总是返回true?这可能会导致问题,因为它也会捕获按下菜单按钮的事件。