检查操作栏或菜单按钮中是否显示后退按钮

时间:2015-11-06 07:08:23

标签: android android-actionbar navigation-drawer back

如何检查操作栏中的左键是菜单按钮还是后退按钮?要启用后退按钮,我们使用以下内容:

actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeButtonEnabled(true); 

我想知道在特定时间启用哪个按钮。我尝试使用堆栈计数,但它并没有为我工作。

菜单图标

enter image description here

后退图标

enter image description here

由于

2 个答案:

答案 0 :(得分:0)

如果您使用的是导航抽屉,则可以通过了解导航抽屉的状态打开或关闭来实现此目的。

假设您已在XML中定义了drawerlayout:

DrawerLayout mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); 

if(mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
  //drawer is open
}

如果您的抽屉打开,则表示您有后退图标,否则您在操作栏上有条形图标

答案 1 :(得分:0)

你是说这个意思吗?

设置ID:

public boolean onCreateOptionsMenu(Menu menu) { 
        super.onCreateOptionsMenu(menu); 
        menu.add((int groupId, int itemId, int order, charsequence title) .setIcon(drawable ID)
        return true; 
    }

获取ID:

public boolean onOptionsItemSelected(MenuItem item) { 
    super.onOptionsItemSelected(item); 
    switch(item.getItemId()) 
    { 
    case  Menu.First+1  : 
        break; 
    case  Menu.First+2 : 
        break; 
    } 
    return true; 
}
相关问题