{"id":3509,"url":"https://github.com/mikepenz/MaterialDrawer","last_synced_at":"2025-08-03T20:32:33.102Z","repository":{"id":26663685,"uuid":"30120110","full_name":"mikepenz/MaterialDrawer","owner":"mikepenz","description":"The flexible, easy to use, all in one drawer library for your Android project. Now brand new with material 2 design.","archived":false,"fork":false,"pushed_at":"2024-08-01T23:23:59.000Z","size":23176,"stargazers_count":11673,"open_issues_count":9,"forks_count":2048,"subscribers_count":332,"default_branch":"develop","last_synced_at":"2024-12-02T12:05:20.042Z","etag":null,"topics":["android","android-development","android-library","android-ui","drawer","drawer-support","drawerlayout","hacktoberfest","java","material-components","material-design","material-theme","material-ui","materialdrawer","mikepenz","navigation-drawer"],"latest_commit_sha":null,"homepage":"https://mikepenz.dev","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikepenz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["mikepenz"]}},"created_at":"2015-01-31T17:37:10.000Z","updated_at":"2024-11-29T03:26:18.000Z","dependencies_parsed_at":"2023-01-14T05:07:33.179Z","dependency_job_id":"bf5b0819-5342-4f63-9a2e-47a3e2530b57","html_url":"https://github.com/mikepenz/MaterialDrawer","commit_stats":{"total_commits":2087,"total_committers":118,"mean_commits":17.6864406779661,"dds":"0.10589362721609963","last_synced_commit":"b03f1d495ae65fd88bdd3ee7e496665ae9721c0f"},"previous_names":[],"tags_count":234,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FMaterialDrawer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FMaterialDrawer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FMaterialDrawer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikepenz%2FMaterialDrawer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikepenz","download_url":"https://codeload.github.com/mikepenz/MaterialDrawer/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228567009,"owners_count":17937983,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-development","android-library","android-ui","drawer","drawer-support","drawerlayout","hacktoberfest","java","material-components","material-design","material-theme","material-ui","materialdrawer","mikepenz","navigation-drawer"],"created_at":"2024-01-05T20:16:43.549Z","updated_at":"2025-08-03T20:32:33.084Z","avatar_url":"https://github.com/mikepenz.png","language":"Kotlin","readme":"# MaterialDrawer\n\n... the flexible, easy to use, all in one drawer library for your Android project.\n\n-------\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#whats-included-\"\u003eWhat's included 🚀\u003c/a\u003e \u0026bull;\n    \u003ca href=\"#setup\"\u003eSetup 🛠️\u003c/a\u003e \u0026bull;\n    \u003ca href=\"MIGRATION.md\"\u003eMigration Guide 🧬\u003c/a\u003e \u0026bull;\n    \u003ca href=\"FAQ.md\"\u003eWIKI / FAQ 📖\u003c/a\u003e \u0026bull;\n    \u003ca href=\"#used-by\"\u003eUsed by\u003c/a\u003e \u0026bull;\n    \u003ca href=\"https://play.google.com/store/apps/details?id=com.mikepenz.materialdrawer.app\"\u003eSample App\u003c/a\u003e\n\u003c/p\u003e\n\n-------\n\n### What's included 🚀\n- **the easiest possible integration**\n- **uses the androidX support libraries**\n- compatible down to **API Level 16**\n- includes an **AccountSwitcher**\n- quick and simple api\n- follows the **NEW Google Material Design Guidelines**\n- use **vector** (.svg) icons and **icon fonts** via the [Android-Iconics](https://github.com/mikepenz/Android-Iconics) integration\n - **Google Material Design Icons**, Google **Material Community** Design Icons, FontAwesome and more\n- comes with various **themes** which help to get your own themes clean\n- modify the colors on the go\n- comes with multiple default drawer items\n- based on a **RecyclerView**\n- **RTL** support\n- Gmail like **MiniDrawer**\n- expandable items\n- **badge** support\n- define custom drawer items\n- tested and **stable**\n- sticky footer or headers\n- **absolutely NO limits**\n- NavController support by @petretiandrea\n\n\u003e If you upgrade from \u003c 8.0.0 follow the [MIGRATION GUIDE](https://github.com/mikepenz/MaterialDrawer/blob/develop/MIGRATION.md)\n\n# Preview\n\n## Screenshots 🎉\n![Image](DEV/github/screenshots_combined.jpg)\n\n# Setup\n\n## Latest releases 🛠\n\n- Kotlin \u0026\u0026 M3 \u0026\u0026 JVM\n  17 | [v10.0.0-b01](https://github.com/mikepenz/MaterialDrawer/tree/v10.0.0-b01)\n- Kotlin \u0026\u0026 Material 3 | [v9.0.2](https://github.com/mikepenz/MaterialDrawer/tree/v9.0.2)\n- Kotlin | [v8.4.5](https://github.com/mikepenz/MaterialDrawer/tree/v8.4.5) (Provided as-is only)\n- Java \u0026\u0026 AndroidX | [v6.1.2](https://github.com/mikepenz/MaterialDrawer/tree/v6.1.2) (Provided as-is only)\n- Java \u0026\u0026 AppCompat | [v6.0.9](https://github.com/mikepenz/MaterialDrawer/tree/v6.0.9) (Provided as-is only)\n\n### 1. Provide the gradle dependency\n\nThe latest release is available\non [Maven Central](https://search.maven.org/artifact/com.mikepenz/materialdrawer/9.0.1/aar).\n\n```gradle\nimplementation(\"com.mikepenz:materialdrawer:${latestRelease}\")\n```\n\n```gradle\n//required support lib modules\nimplementation \"androidx.appcompat:appcompat:${versions.appcompat}\"\nimplementation \"androidx.recyclerview:recyclerview:${versions.recyclerView}\"\nimplementation \"androidx.annotation:annotation:${versions.annotation}\"\nimplementation \"com.google.android.material:material:1.5.0-alpha05\" // requires at least 1.5.0-x\nimplementation \"androidx.constraintlayout:constraintlayout:${versions.constraintLayout}\"\n```\n\n[NavController Support @ Maven Central](https://search.maven.org/artifact/com.mikepenz/materialdrawer-nav/9.0.1/aar).\n\n```gradle\n// Add for NavController support\nimplementation \"com.mikepenz:materialdrawer-nav:${lastestMaterialDrawerRelease}\"\n```\n\n[Android-Iconics Support @ Maven Central](https://search.maven.org/artifact/com.mikepenz/materialdrawer-iconics/9.0.1/aar)\n.\n\n```gradle\n// Add for Android-Iconics support\nimplementation \"com.mikepenz:materialdrawer-iconics:${lastestMaterialDrawerRelease}\"\n```\n\n### 2. Add the `Drawer` into the XML\n\nThe `MaterialDrawerSliderView` has to be provided as child of the `DrawerLayout` and will as such act as the slider\n\n```kotlin\n\u003candroidx.drawerlayout.widget.DrawerLayout xmlns : android =\"http://schemas.android.com/apk/res/android\"\nxmlns:app = \"http://schemas.android.com/apk/res-auto\"\nandroid:id = \"@+id/root\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    android:fitsSystemWindows=\"true\"\u003e\n\n    ... your content ...\n\n    \u003ccom.mikepenz.materialdrawer.widget.MaterialDrawerSliderView\n        android:id=\"@+id/slider\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"match_parent\"\n        android:layout_gravity=\"start\"\n        android:fitsSystemWindows=\"true\" /\u003e\n\u003c/androidx.drawerlayout.widget.DrawerLayout\u003e\n```\n### 3. Add the `DrawerStyle` to your theme\n\n```xml\n\u003cstyle name=\"SampleApp.DayNight\" parent=\"Theme.Material3.DayNight.NoActionBar\"\u003e\n    ...\n    \u003citem name=\"materialDrawerStyle\"\u003e@style/Widget.MaterialDrawerStyle\u003c/item\u003e\n    \u003citem name=\"materialDrawerHeaderStyle\"\u003e@style/Widget.MaterialDrawerHeaderStyle\u003c/item\u003e\n    ...\n\u003c/style\u003e\n```\n\nGreat. Your drawer is now ready to use.\n\n### Note\n\n\u003e Using v9.x with Material 3 theming requires a `Material3` theme as base for the activity.\n\n# Additional Setup\n### Add items and adding some functionality\n\n```kotlin\n//if you want to update the items at a later time it is recommended to keep it in a variable\nval item1 = PrimaryDrawerItem().apply { nameRes = R.string.drawer_item_home; identifier = 1 }\nval item2 = SecondaryDrawerItem().apply { nameRes = R.string.drawer_item_settings; identifier = 2 }\n\n// get the reference to the slider and add the items\nslider.itemAdapter.add(\n\t    item1,\n\t    DividerDrawerItem(),\n\t    item2,\n\t    SecondaryDrawerItem().apply { nameRes = R.string.drawer_item_settings }\n)\n\n// specify a click listener\nslider.onDrawerItemClickListener = { v, drawerItem, position -\u003e\n    // do something with the clicked item :D\n    false\n}\n```\n\n### Selecting an item\n```kotlin\n//set the selection to the item with the identifier 1\nslider.setSelection(1)\n//set the selection to the item with the identifier 2\nslider.setSelection(item2)\n//set the selection and also fire the `onItemClick`-listener\nslider.setSelection(1, true)\n```\n\nBy default, when a drawer item is clicked, it becomes the new selected item. If this isn't the expected behavior,\nyou can disable it for this item using `isSelectable = false`:\n```kotlin\nSecondaryDrawerItem().apply { nameRes = R.string.drawer_item_dialog; isSelectable = false }\n```\n\n### Modify items or the drawer\n\n```kotlin\n//modify an item of the drawer\nitem1.apply {\n  nameText = \"A new name for this drawerItem\"; badge = StringHolder(\"19\")\n  badgeStyle = BadgeStyle().apply { textColor = ColorHolder.fromColor(Color.WHITE); color = ColorHolder.fromColorRes(R.color.md_red_700) }\n}\n//notify the drawer about the updated element. it will take care about everything else\nslider.updateItem(item1)\n\n//to update only the name, badge, icon you can also use one of the quick methods\nslider.updateName(1, \"A new name\")\n\n//the result object also allows you to add new items, remove items, add footer, sticky footer, ..\nslider.addItem(DividerDrawerItem())\nslider.addStickyFooterItem(PrimaryDrawerItem().apply { nameTest = \"StickyFooter\" })\n\n//remove items with an identifier\nslider.removeItem(2)\n\n//open / close the drawer\nslider.drawerLayout?.openDrawer(slider)\nslider.drawerLayout?.closeDrawer(slider)\n\n//get the reference to the `DrawerLayout` itself\nslider.drawerLayout\n```\n\n### Add profiles and an AccountHeader\n```kotlin\n// Create the AccountHeader\nheaderView = AccountHeaderView(this).apply {\n    attachToSliderView(slider) // attach to the slider\n    addProfiles(\n        ProfileDrawerItem().apply { nameText = \"Mike Penz\"; descriptionText = \"mikepenz@gmail.com\"; iconRes = R.drawable.profile; identifier = 102 }\n    )\n    onAccountHeaderListener = { view, profile, current -\u003e\n        // react to profile changes\n        false\n    }\n    withSavedInstance(savedInstanceState)\n}\n```\n\n### Android-Iconics support\nThe MaterialDrawer provides an extension for the [Android-Iconics](https://github.com/mikepenz/Android-Iconics) library. This allows you to create your `DrawerItems` with an icon from any font.\n\nChoose the fonts you need. [Available Fonts](https://github.com/mikepenz/Android-Iconics#2-choose-your-desired-fonts)\n\n```gradle\n// Add for Android-Iconics support\nimplementation \"com.mikepenz:materialdrawer-iconics:${lastestMaterialDrawerRelease}\"\n\n// fonts\nimplementation 'com.mikepenz:google-material-typeface:x.y.z@aar' //Google Material Icons\nimplementation 'com.mikepenz:fontawesome-typeface:x.y.z@aar'     //FontAwesome\n```\n\n```kotlin\n//now you can simply use any icon of the Google Material Icons font\nPrimaryDrawerItem().apply { iconicsIcon = GoogleMaterial.Icon.gmd_wb_sunny }\n//Or an icon from FontAwesome\nSecondaryDrawerItem().apply { iconicsIcon = FontAwesomeBrand.Icon.fab_github }\n```\n\n# Advanced Setup\n\nFor advanced usecases. Please have a look at the provided sample activities.\n\n## Load images via url\nThe MaterialDrawer supports fetching images from URLs and setting them for the Profile icons. As the MaterialDrawer does not contain an ImageLoading library\nthe dev can choose his own implementation (Picasso, Glide, ...). This has to be done, before the first image should be loaded via URL. (Should be done in the Application, but any other spot before loading the first image is working too)\n* SAMPLE using [PICASSO](https://github.com/square/picasso)\n* [SAMPLE](https://github.com/mikepenz/MaterialDrawer/blob/develop/app/src/main/java/com/mikepenz/materialdrawer/app/CustomApplication.kt) using [GLIDE](https://github.com/bumptech/glide)\n\n```kotlin\n//initialize and create the image loader logic\nDrawerImageLoader.init(object : AbstractDrawerImageLoader() {\n    override fun set(imageView: ImageView, uri: Uri, placeholder: Drawable) {\n        Picasso.get().load(uri).placeholder(placeholder).into(imageView)\n    }\n\n    override fun cancel(imageView: ImageView) {\n        Picasso.get().cancelRequest(imageView)\n    }\n    \n    /*\n    override fun set(imageView: ImageView, uri: Uri, placeholder: Drawable, tag: String?) {\n        super.set(imageView, uri, placeholder, tag)\n    }\n\n    override fun placeholder(ctx: Context): Drawable {\n        return super.placeholder(ctx)\n    }\n\n    override fun placeholder(ctx: Context, tag: String?): Drawable {\n        return super.placeholder(ctx, tag)\n    }\n    */\n})\n```\n\nAn implementation with [GLIDE v4](https://github.com/mikepenz/MaterialDrawer/blob/develop/app/src/main/java/com/mikepenz/materialdrawer/app/CustomApplication.kt) (See tag v6.1.1 for glide v3 sample) can be found in the sample application\n\n## JVM Target 1.8\n\n```\n// Since 8.1.0 the drawer includes core ktx 1.3.0 which requires jvm 1.8\nkotlinOptions {\n    jvmTarget = \"1.8\"\n}\n```\n## Style the drawer 🖌️\n\n### Custom style - styles.xml\nCreate your custom style. If you don't need a custom theme see the next section, how you can set the colors just by overwriting the original colors.\n\n```xml\n// define a custom drawer style\n\u003cstyle name=\"Widget.MaterialDrawerStyleCustom\" parent=\"Widget.MaterialDrawerStyle\"\u003e\n    \u003citem name=\"materialDrawerInsetForeground\"\u003e#4000\u003c/item\u003e\n    \u003c!-- MaterialDrawer specific values --\u003e\n    \u003citem name=\"materialDrawerBackground\"\u003e?colorSurface\u003c/item\u003e\n    \u003citem name=\"materialDrawerPrimaryText\"\u003e@color/color_drawer_item_text\u003c/item\u003e\n    \u003citem name=\"materialDrawerPrimaryIcon\"\u003e@color/color_drawer_item_text\u003c/item\u003e\n    \u003citem name=\"materialDrawerSecondaryText\"\u003e@color/color_drawer_item_text\u003c/item\u003e\n    \u003citem name=\"materialDrawerSecondaryIcon\"\u003e@color/color_drawer_item_text\u003c/item\u003e\n    \u003citem name=\"materialDrawerDividerColor\"\u003e?colorOutline\u003c/item\u003e\n    \u003citem name=\"materialDrawerSelectedBackgroundColor\"\u003e?colorSecondaryContainer\u003c/item\u003e\n\u003c/style\u003e\n\n// define a custom header style\n\u003cstyle name=\"Widget.MaterialDrawerHeaderStyleCustom\" parent=\"\"\u003e\n    \u003citem name=\"materialDrawerCompactStyle\"\u003etrue\u003c/item\u003e\n    \u003citem name=\"materialDrawerHeaderSelectionText\"\u003e?colorOnSurface\u003c/item\u003e\n    \u003citem name=\"materialDrawerHeaderSelectionSubtext\"\u003e?colorOnSurface\u003c/item\u003e\n\u003c/style\u003e\n\n// define the custom styles for the theme\n\u003cstyle name=\"SampleApp\" parent=\"Theme.Material3.Light.NoActionBar\"\u003e\n    ...\n    \u003citem name=\"materialDrawerStyle\"\u003e@style/Widget.MaterialDrawerStyleCustom\u003c/item\u003e\n    \u003citem name=\"materialDrawerHeaderStyle\"\u003e@style/Widget.MaterialDrawerHeaderStyleCustom\u003c/item\u003e\n    ...\n\u003c/style\u003e\n```\n\n### Adjust BezelImageView style\n\nOverwrite the Style of the BezelImageView for the whole MaterialDrawer\n   \n```xml\n\u003cstyle name=\"BezelImageView\"\u003e\n    \u003citem name=\"biv_maskDrawable\"\u003e@drawable/material_drawer_rectangle_mask\u003c/item\u003e\n    \u003citem name=\"biv_drawCircularShadow\"\u003efalse\u003c/item\u003e\n    \u003citem name=\"biv_selectorOnPress\"\u003e@color/material_drawer_primary\u003c/item\u003e\n    \u003citem name=\"android:scaleType\"\u003ecenterInside\u003c/item\u003e\n\u003c/style\u003e\n```\n\n# Used by\n(feel free to send me new projects)\n\n* [Screener](https://play.google.com/store/apps/details?id=de.toastcode.screener)\n* [Meldmail](https://play.google.com/store/apps/details?id=com.meldmail)\n* [Academic Schedule](https://play.google.com/store/apps/details?id=com.auebcsschedule.ppt)\n* [Sprit Club](https://play.google.com/store/apps/details?id=at.idev.spritpreise)\n* [StickyNotes](https://play.google.com/store/apps/details?id=com.jsvmsoft.stickynotes)\n* [MLManager](https://github.com/javiersantos/MLManager)\n* [Fimpl](https://play.google.com/store/apps/details?id=com.danielZET.fimpl)\n* [Teacher Gradebook](https://play.google.com/store/apps/details?id=com.apolosoft.cuadernoprofesor)\n* [AS Sales Management](https://play.google.com/store/apps/details?id=com.armsoft.mtrade)\n* [Sporza Voetbal](http://play.google.com/store/apps/details?id=be.vrt.mobile.android.sporza.voetbal)\n* [Atmosphere](https://play.google.com/store/apps/details?id=com.peakpocketstudios.atmosphere)\n* [Fitness Challenge](https://play.google.com/store/apps/details?id=com.isidroid.fitchallenge)\n* [I'm Reading Quran - Kur'an Okuyorum](https://play.google.com/store/apps/details?id=com.homemade.kuranokuma)\n* [Makota Money Manager](https://play.google.com/store/apps/details?id=be.jatra.makota)\n* [Companion for Band](https://github.com/adithya321/Companion-for-Band)\n* [Recipedia](https://play.google.com/store/apps/details?id=com.md.recipedia)\n* [Right Сourse - ruble course](https://play.google.com/store/apps/details?id=com.currency.work.currencychecker)\n* [Gameru](https://play.google.com/store/apps/details?id=net.gameru)\n* [Boost for reddit](https://play.google.com/store/apps/details?id=com.rubenmayayo.reddit)\n* [Calendula](https://github.com/citiususc/calendula)\n* [MyTimes](https://github.com/debo1994/MyTimes)\n* [VoIP By Antisip](https://play.google.com/store/apps/details?id=com.antisip.vbyantisip)\n* [MBox - One Place for Entertainment](https://play.google.com/store/apps/details?id=com.paperwrrk.android.mbox)\n* [D Notes - Smart and Material Note Taking](https://play.google.com/store/apps/details?id=com.dvdb.bergnotes)\n* [Moviebase](https://play.google.com/store/apps/details?id=com.moviebase)\n* [MyFuelLog2](https://play.google.com/store/apps/details?id=com.acty.myfuellog2)\n* [MECSol](https://play.google.com/store/apps/details?id=tk.rlta.mecsol)\n* [3D Geeks: Thingiverse Browser for 3D Printing](https://play.google.com/store/apps/details?id=work.twob.threed)\n* [Tusky: Mastodon Client for Android](https://github.com/tuskyapp/Tusky)\n* [Tibia Live](https://tibia.space/)\n* [Walkaholic](https://play.google.com/store/apps/details?id=com.walkaholic.hikeapp)\n* [Pachli: Mastodon Client](https://pachli.app)\n\n# Articles about the MaterialDrawer\n* [java-help.ru - MaterialDrawer tutorial](http://java-help.ru/material-navigationdrawer/)\n* [MaterialDrawer in multiple activities](https://android.jlelse.eu/android-using-navigation-drawer-across-multiple-activities-the-easiest-way-b011f152aebd)\n\n\n# Credits\n\n- Mirosław Stanek - [GitHub](https://github.com/frogermcs)\n\t- For his InstaMaterial concept and the idea of inflating the drawerLayout [InstaMaterial Concept](http://frogermcs.github.io/InstaMaterial-concept-part-7-navigation-drawer/)\n\n- Lunae Luman - [Behance](https://www.behance.net/gallery/18526001/Material-Wallpaper) for the Header Image\n\n# Developed By\n\n- Mike Penz\n  - [mikepenz.dev](https://mikepenz.dev) - [blog.mikepenz.dev](https://blog.mikepenz.dev) - \u003cmikepenz@gmail.com\u003e\n  - [paypal.me/mikepenz](http://paypal.me/mikepenz)\n  - [Automatic changelog generation action](https://github.com/marketplace/actions/release-changelog-builder)\n\n# License\n\n    Copyright 2021 Mike Penz\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","funding_links":["https://github.com/sponsors/mikepenz","http://paypal.me/mikepenz"],"categories":["\u003ca name=\"Menu \u0026 Drawer\"\u003eMenu \u0026 Drawer\u003c/a\u003e","Libraries","抽屉菜单","Android","Kotlin","Android 应用","Java","[Programming]","Libs","库"],"sub_categories":["Personal Blog","GUI","Components","网络服务_其他","[Programming] - [Android]","\u003cA NAME=\"Widget\"\u003e\u003c/A\u003eWidget","[](https://github.com/JStumpp/awesome-android/blob/master/readme.md#navigation)导航"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikepenz%2FMaterialDrawer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikepenz%2FMaterialDrawer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikepenz%2FMaterialDrawer/lists"}