如何在android导航抽屉上设置ic_drawer.png图标?

时间:2014-05-26 12:51:10

标签: android navigation-drawer

        getActionBar().setDisplayHomeAsUpEnabled(true);
        getActionBar().setHomeButtonEnabled(true);

        mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, 
                R.drawable.ic_drawer, 
                R.string.drawer_open, 
                R.string.drawer_close) { ... }

好的,我多次检查了R.drawable.ic_drawer几次。这是一个有3个小节的图标,但我的android显示左箭头。任何人都知道什么是错的以及如何解决它?提前谢谢。

3 个答案:

答案 0 :(得分:1)

尝试删除getActionBar()。setDisplayHomeAsUpEnabled(true);

答案 1 :(得分:0)

从Activity的onPostCreate调用syncState(),使指标与链接的DrawerLayout的状态同步。

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);

        mDrawerToggle.syncState();
}

此外,应在ActionBarDrawerToggle上调用onConfigurationChanged,将其包括在您的Activity中:

    @Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    mDrawerToggle.onConfigurationChanged(newConfig);
}

答案 2 :(得分:0)

在您的NavigationDrawerfragment类中,转到setUp方法并使用actionbar执行类似这样的操作,将actionBar.setHomeAsUpIndicator()设置为ic_drawer,如下所示。它将删除后退按钮并替换为ic_drawer按钮

public void setUp(int fragmentId, DrawerLayout drawerLayout) {
    mFragmentContainerView = getActivity().findViewById(fragmentId);

    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);
    actionBar.setHomeButtonEnabled(true);
    actionBar.setHomeAsUpIndicator(R.drawable.ic_drawer);
}