对于android的导航抽屉,为什么需要setDisplayHomeAsUpEnabled

时间:2014-04-19 08:22:00

标签: android android-actionbar navigation-drawer

        getActionBar().setHomeButtonEnabled(true);
        getActionBar().setDisplayHomeAsUpEnabled(true);
        mDrawerToggle = new ActionBarDrawerToggle(this,
                mDrawerLayout,
                R.drawable.ic_drawer,
                R.string.open_drawer,
                R.string.close_drawer
        );


        mDrawerLayout.setDrawerListener(mDrawerToggle);

这是我的代码的一部分,我用来设置导航抽屉和应用程序图标来切换它。 我很困惑,为什么setDrawerListener在构造DrawerToggle对象时已经在构造函数中指定了DrawableLayout。 其次,为什么在我们实际上没有启用它时需要setDisplayHomeUpEnabled。没有它,为什么不显示ic_drawer?

感谢。

1 个答案:

答案 0 :(得分:1)

来自文档link

  

ActionBarDrawerToggle可以直接用作DrawerLayout.DrawerListener,或者如果您已经提供了自己的侦听器,请调用您自己的每个侦听器方法。

所以setDrawerListener方法用于设置抽屉监听器,它可以是自定义监听器,也可以使用ActionBarDrawerToggle对象,因为它已经实现了DrawerLayout.DrawerListener

设置setDisplayHomeUpEnabled正在显示<在您的操作栏中签名,但在使用导航栏时,它会显示三行。

这就是它的实施方式。