隐藏Action Bar Sherlock中的项目

时间:2013-08-06 07:00:54

标签: android actionbarsherlock

我想在Action Bar Sherlock中隐藏一个项目。我试试看:

public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item) {
    switch (item.getItemId()) {    
        case 2131165381:
           item.setVisible(false);
           supportInvalidateOptionsMenu();
           CopyOfAsyncLoadTasks.run(this);
           item.setVisible(true);
        break;

我做错了什么?

1 个答案:

答案 0 :(得分:1)

我建议您使用id的资源<item>代替您的“ambicious”号码。

switch (item.getItemId()) {    
   case R.id.myItem:
     menu.findItem(R.id.myItem).setVisible(false);
   break;
   ...
}

从第一眼看你的代码我不知道到底是什么号码2131165381?如果你在团队中工作,那么对于另一个人来说,它不会是人类可读的。

注意:要获得更多菜单控制权,我建议您创建第二个菜单变量e.q:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    this.menu = menu;
    ...
}