代码之家  ›  专栏  ›  技术社区  ›  Sinan Kara

如何更改导航抽屉图标?

  •  -2
  • Sinan Kara  · 技术社区  · 7 年前

    我想更改导航抽屉图标。但在我更改图标后,应用程序崩溃了。错误代码显示了布尔值,我很遗憾不理解。我找不到我的失败。我是否以错误的方式实现了它? 抱歉,我是Android Studio新手,这个问题可能有点不必要。但是为了解决这个问题做了很多努力。然而,我还没有找到解决方案。

    这是主要课程。我在OnCreate方法之外生成了一个变量。

    public class MainActivity extends AppCompatActivity {
    
        private DrawerLayout mDrawerLayout;
        ExpandableListAdapter mMenuAdapter;
        ExpandableListView expandableList;
        List<ExpandedMenuModel> listDataHeader;
        HashMap<ExpandedMenuModel, List<String>> listDataChild;
    
        ActionBarDrawerToggle mDrawerToggle;
    
        Drawable drawable;
    
        WebView webView;
        Toolbar toolbar;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_navigation_view);
    
            mDrawerToggle.setDrawerIndicatorEnabled(false);
    
            drawable = ResourcesCompat.getDrawable(getResources(),   R.drawable.ic_menu_gallery, getTheme());
    
            mDrawerToggle.setHomeAsUpIndicator(drawable);
            mDrawerToggle.setToolbarNavigationClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) {
                        mDrawerLayout.closeDrawer(GravityCompat.START);
                    } else {
                        mDrawerLayout.openDrawer(GravityCompat.START);
                    }
                }
            });
    
            ........
    
    2 回复  |  直到 7 年前
        1
  •  1
  •   vm345    7 年前
    mDrawerToggle = ActionBarDrawerToggle(this, mDrawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close);
    mDrawerToggle.setDrawerIndicatorEnabled(false);
    mDrawerToggle.setToolbarNavigationClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) {
                        mDrawerLayout.closeDrawer(GravityCompat.START);
                    } else {
                        mDrawerLayout.openDrawer(GravityCompat.START);
                    }
                }
            });
    mDrawerToggle.setHomeAsUpIndicator(R.drawable.ic_menu_gallery);  
    

    更多信息请查看此 link

        2
  •  0
  •   marcinj    7 年前

    您尚未将值分配给:

    mDrawerToggle
    

    通话前 setDrawerIndicatorEnabled 在此处:

    mDrawerToggle.setDrawerIndicatorEnabled(false);