没有应用程序图标的Android导航抽屉

时间:2015-03-19 15:11:25

标签: android android-layout navigation-drawer

我有一个导航抽屉,旁边是通用"此按钮打开幻灯片菜单"无论我将应用程序图标设置为旁边出现的按钮(三条水平线之一)。我不能简单地用空白图像替换图像,因为当您尝试打开应用程序时,没有应用程序图标。有没有办法从导航抽屉中删除它而不影响应用程序图标?我已经查看了drawer_layout,在代码中设置它。 。 。我似乎无法找到这个图标被添加到标题栏的位置。

这是我创建菜单的代码:

private void setupDrawer(){
    mTitle = mDrawerTitle = getTitle();
    mForumTitles = getResources().getStringArray(R.array.main_menu_array); 

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


    mDrawerList = (ListView) findViewById(R.id.left_drawer);

    // set a custom shadow that overlays the main content when the drawer opens
    mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
    // set up the drawer's list view with items and click listener
    mDrawerList.setAdapter(new ArrayAdapter<String>(this,
            R.layout.drawer_list_item, mForumTitles));
    mDrawerList.setOnItemClickListener(new DrawerItemClickListener());

    // enable ActionBar app icon to behave as action to toggle nav drawer
    getActionBar().setDisplayHomeAsUpEnabled(true);
    getActionBar().setHomeButtonEnabled(true);


    // ActionBarDrawerToggle ties together the the proper interactions
    // between the sliding drawer and the action bar app icon
    mDrawerToggle = new ActionBarDrawerToggle(
            this,                  /* host Activity */
            mDrawerLayout,         /* DrawerLayout object */
            R.drawable.ic_drawer,  /* nav drawer image to replace 'Up' caret */

            R.string.drawer_open,  /* "open drawer" description for accessibility */
            R.string.drawer_close  /* "close drawer" description for accessibility */
            ) {
        public void onDrawerClosed(View view) {
            getActionBar().setTitle("Menu");
            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()
        }

        public void onDrawerOpened(View drawerView) {
            //getActionBar().setTitle(mDrawerTitle);

            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()
        }
    };
    mDrawerLayout.setDrawerListener(mDrawerToggle);
}

有什么想法吗?我将发布必要的代码或xml文件的任何其他部分。

3 个答案:

答案 0 :(得分:2)

您可以在样式定义中隐藏动作栏中的图标。检查this answer了解如何操作。

答案 1 :(得分:0)

你应该做的是将徽标添加为你的家作为向上指示器而不是3个栏:

<item name="displayOptions">showHome|showTitle|homeAsUp</item>      
<item name="homeAsUpIndicator">R.drawable.icon</item>

到您的伴侣,其父级必须是Theme.AppCompat

答案 2 :(得分:0)

actionBarDrawerToggle.setDrawerIndicatorEnabled(false);

在我的情况下,导航按钮是不可见的,但仍占据该位置,所以我设法通过上面的代码从工具栏中完全删除它。以防万一,那些正在自定义工具栏和DrawerLayout的人。