如何在使用 appcompat21 时隐藏导航抽屉指示器

how to hide navigation drawer indicator while using appcompat21

我按照 Cris Banes Guide 使用工具栏小部件作为 ActionBar。 在我的用例中,我需要在 activity 中隐藏导航抽屉,同时滑动到 ViewPager 中包含的另一个片段。 以前,我在使用 ActionBar Widget 隐藏导航抽屉时使用了以下属性。这似乎工作正常。 getActionBar().setDisplayHomeAsUpEnabled(false); getActionBar().setHomeButtonEnabled(false);

尽管现在在使用

时更改为 AppCompat21
getSupportActionBar().setDisplayHomeAsUpEnabled(false);
getSupportActionBar().setHomeButtonEnabled(false);

这似乎没有隐藏 actionBar 中的导航抽屉。 在这方面我是否遗漏了什么任何帮助表示赞赏。

toolbar.setNavigationIcon(null);

它会隐藏导航图标,参考你可以查看这个answer

您的代码应该仅在您使用时有效:

getSupportActionBar().setDisplayHomeAsUpEnabled(false);

getSupportActionBar().setHomeButtonEnabled(false);

你也可以试试:

toolbar.setNavigationIcon(null);

如果您在 DrawerLayout 中使用 Toolbar --> AppBarLayout

然后class

ActionBarDrawerToggle-->setDrawerIndicatorEnabled(false) 

函数将使导航抽屉图标 invisible.like

public class MainActivity extends AppCompatActivity
                implements NavigationView.OnNavigationItemSelectedListener
{

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
                this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
        drawer.addDrawerListener(toggle);
//the below line of code will allow you to hide the nav drawer icon 
        toggle.setDrawerIndicatorEnabled(false);    
        toggle.syncState();

        NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);
    }