一个 Gradle 插件加 Compose UI 库,在构建时收集项目依赖及许可证,并在 Android 与多平台应用中展示。
mikepenz/MaterialDrawer
一个 Kotlin/Android 库,为应用快速添加可定制的导航抽屉,支持账户头部、徽章和可展开菜单项。
- Star
- 11,638
- Fork
- 2,009
- 未关闭 Issue
- 12
- 最近提交
- 5天前
这是什么?
MaterialDrawer 是一个 Android 库,用于构建从屏幕边缘滑出的导航抽屉。它基于 RecyclerView 和 AndroidX 支持库实现,只需在 DrawerLayout 中加入 MaterialDrawerSliderView,就能得到可直接使用的抽屉,并内置多种默认菜单项类型。
该库覆盖了常见的抽屉需求,包括一级和二级菜单项、分隔线、徽章、可展开项、粘性页脚与页头,以及支持切换用户的 AccountHeader。颜色和文字样式可通过主题属性修改,还提供 MiniDrawer 样式。图标既可以使用矢量资源,也可以通过 Android-Iconics 集成使用图标字体,另有可选的 NavController 模块。
项目提供 Kotlin 和 Material 3 版本,旧版 Java 发布版本也仍可查阅。v9.x 需要 Material 3 主题作为基础,新版本要求 JVM 目标版本为 1.8 或更高。
核心功能
- 01支持一级、二级菜单项、分隔线、徽章和可展开菜单项
- 02提供带用户列表与切换功能的 AccountHeader
- 03支持粘性页脚和页头
- 04可通过 Android-Iconics 使用矢量图标或图标字体
- 05颜色和样式可通过主题修改,并支持 MiniDrawer 与 RTL 布局
适用场景
- 为 Android 应用添加带账户切换的侧边导航菜单
- 实现类似 Gmail 的可收缩迷你抽屉
- 通过 NavController 模块将导航抽屉与 Jetpack Navigation 结合
快速上手
- 1
在 Gradle 文件中添加 materialdrawer 依赖
implementation("com.mikepenz:materialdrawer:${latestRelease}") - 2
在 XML 布局中将 MaterialDrawerSliderView 添加为 DrawerLayout 的子视图
- 3
在应用主题中添加 materialDrawerStyle 和 materialDrawerHeaderStyle 属性
使用前须知
- 这是一个仅适用于 Android 的库,需要 Kotlin 和 AndroidX 支持库。
- 使用 9.x 版本配合 Material 3 主题时,需要将 Material3 主题作为 Activity 的基础主题。
- 当前列出的最新版本是测试版(v10.0.0-b01),较旧的 Java 及 Kotlin 版本仅提供按原样使用的支持。
- 要通过 URL 加载头像图片,需要自行添加并配置图片加载库。
收录于专题
标签
常见问题
- MaterialDrawer 是什么?
- 一个 Kotlin/Android 库,为应用快速添加可定制的导航抽屉,支持账户头部、徽章和可展开菜单项。 MaterialDrawer 是一个 Android 库,用于构建从屏幕边缘滑出的导航抽屉。它基于 RecyclerView 和 AndroidX 支持库实现,只需在 DrawerLayout 中加入 MaterialDrawerSliderView,就能得到可直接使用的抽屉,并内置多种默认菜单项类型。
- MaterialDrawer 可以免费使用吗?用的什么许可证?
- MaterialDrawer 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- MaterialDrawer 还在维护吗?
- 活跃维护中。MaterialDrawer 最近一次提交是在 2026年11月2日。
- MaterialDrawer 适合用来做什么?
- 为 Android 应用添加带账户切换的侧边导航菜单 实现类似 Gmail 的可收缩迷你抽屉 通过 NavController 模块将导航抽屉与 Jetpack Navigation 结合
- MaterialDrawer 怎么安装和运行?
- 在 Gradle 文件中添加 materialdrawer 依赖: implementation("com.mikepenz:materialdrawer:${latestRelease}") 在 XML 布局中将 MaterialDrawerSliderView 添加为 DrawerLayout 的子视图 在应用主题中添加 materialDrawerStyle 和 materialDrawerHeaderStyle 属性
- 在哪里获取 MaterialDrawer?
- 源代码和安装说明在 GitHub 上:https://github.com/mikepenz/MaterialDrawer
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 Vue.js 的跨平台框架,可用同一套代码构建单页应用、PWA、移动端、Electron 桌面应用等。
一个 Gradle 插件,用于将 Android 应用的构建、上传、发布及 Play 商店元数据更新自动化。
面向 Android 应用的端内 HTTP 检查工具,记录 OkHttp 请求与响应,功能类似 Charles 但运行在设备上。
一个用于快速创建 Android/Kotlin 项目的 GitHub 模板,内置静态分析、GitHub Actions CI 和 Maven Central 发布配置。
基于 Google Material Design 实现的 React 组件库,提供大量开箱即用的界面组件。