小編給大家分享一下怎么使用DrawerLayout和NavigationView實現(xiàn)側(cè)滑菜單欄的效果,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序制作、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了隆安免費建站歡迎大家使用!
效果如下:
Layout布局
NavigationView需要設置app:headerLayout 和 app:menu,headerLayout對應菜單的上面部分,一般用來顯示用戶信息,menu則對應實際的菜單項文件。
headerLayout
menu
代碼實現(xiàn)
ActionBarDrawerToggle可以配合Toolbar,實現(xiàn)Toolbar上菜單按鈕開關(guān)效果。
//設置Toolbar mToolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(mToolbar); //設置DrawerLayout mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, mToolbar, R.string.drawer_open, R.string.drawer_close); mDrawerToggle.syncState(); mDrawerLayout.setDrawerListener(mDrawerToggle);
//設置NavigationView點擊事件 mNavigationView = (NavigationView) findViewById(R.id.navigation_view); setupDrawerContent(mNavigationView); //設置NavigationView點擊事件 private void setupDrawerContent(NavigationView navigationView) { navigationView.setNavigationItemSelectedListener( new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { switch (menuItem.getItemId()) { case R.id.navigation_item_example: switchToExample(); break; case R.id.navigation_item_blog: switchToBlog(); break; case R.id.navigation_item_about: switchToAbout(); break; } menuItem.setChecked(true); mDrawerLayout.closeDrawers(); return true; } }); }
看完了這篇文章,相信你對“怎么使用DrawerLayout和NavigationView實現(xiàn)側(cè)滑菜單欄的效果”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!