Jetpack Compose 是 Android 中新一代的 UI 工具包,它为 Android 应用程序提供了更加简单、强大和可组合的方式来创建漂亮和灵活的用户界面。然而,学习新技术并不容易,因此本文将向您推荐 10 个 Jetpack Compose 完整的示例,这些示例将帮助您了解如何使用 Jetpack Compose 构建应用程序,并提供实用的示例代码,让您轻松上手。
1. JetNews
一个示例博客文章查看器,展示了在典型的 Material 应用程序和现实世界架构中使用 Compose 的用法。特点 • 中等复杂度 • 多样化的用户界面 • 浅色和深色主题 • 资源加载 • 用户界面测试
项目地址
https://github.com/android/compose-samples/blob/main/JetNews
2. Jetchat
一个以用户界面状态模式和文本输入为重点的示例聊天应用程序。
特点 • 低复杂度 • Material Design 3 主题和 Material You 动态颜色 • 资源加载 • 返回按钮处理 • 与架构组件的集成:Navigation、Fragments、LiveData、ViewModel • Animation • UI测试
https://github.com/android/compose-samples/blob/main/Jetchat
3. Jetsurvey
一个示例调查应用程序,展示了在 Compose 中的文本输入、验证和用户界面状态管理。特点 • 低复杂度 • TextField 和表单验证 • Snackbar 实现 • 元素的可重用性和样式设置 • 各种表单元素
项目地址
https://github.com/android/compose-samples/blob/main/Jetsurvey
4. Jetsnack
Jetsnack 是一个使用 Compose 构建的示例小吃订购应用程序。特点 • 中等复杂度 • 自定义设计系统 • 自定义布局 • 动画效果
项目地址
https://github.com/android/compose-samples/blob/main/Jetsnack
5. Jetcaster
一个示例播客应用程序,具有完整功能的 Redux 风格架构,并展示了动态主题。
特点 • 高级示例 • 使用播客艺术作品进行动态主题设置 • 图像获取 • WindowInsets 支持 • 协程 • 使用 Room 进行本地存储
6. Rally
Rally Material Study 的 Compose 实现,这是一个专注于数据、图表、可重用性和动画的金融应用程序。特点 • 低复杂度 • 使用仅限暗色的 Material 主题 • 自定义布局和可重用元素 • 图表和表格 • 动画效果 • 屏幕截图测试
项目地址
https://github.com/android/compose-samples/blob/main/Jetcaster
7. Crane
Crane Material Study 的 Compose 实现,这是一个旅行应用程序,它使用 Material Design 组件和 Material Theming 来创建个性化、品牌化的体验。
特点 • 中等复杂度 • 可拖动的用户界面元素 • 用户界面状态处理 • 用户界面测试
项目地址
https://github.com/android/compose-samples/blob/main/Crane
8. Reply
Reply Material Study 的 Compose 实现,这是一个电子邮件客户端应用程序,专注于适应手机、平板和可折叠设备的设计。它还展示了全新的 Material Design 3 主题化、动态颜色和导航组件。
特点 • 中等复杂度 • 适应性手机、平板和桌面的用户界面 • 可折叠设备支持 • Material Design 3 主题化与组件 • 动态颜色和光/暗主题支持
项目地址
https://github.com/android/compose-samples/blob/main/Reply
9.Owl
Owl Material Study 的 Compose 实现。Owl 品牌利用鲜明的颜色、形状和排版来表达其品牌特性:活力、大胆和趣味。特点 • 中等复杂度 • Material 主题化与光/暗主题 • 自定义布局 • 动画效果
项目地址
https://github.com/android/compose-samples/blob/main/Owl
10. JetLagged
一个示例的睡眠追踪应用程序,展示了如何在 Compose 中创建自定义布局和图形。
特点 • 自定义布局 • 使用路径创建图表
项目地址
https://github.com/android/compose-samples/blob/main/JetLagged
11. Material Catalog
一个 Jetpack Compose 中可用的 Material Design 组件和功能目录。查看如何实现它们以及它们在真实设备上的外观和行为。
特点 • 存在于 AOSP(Android 开源项目)- 始终保持最新 • 使用与 API 参考文档相同的示例 • 主题选择器,可在运行时更改 Material Theming 值 • 链接到指南、文档、源代码和问题跟踪器
项目地址
https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:compose/integration-tests/material-catalog
12. NowinAndroid
一个用于跟踪 Android 最新新闻和发展的应用程序。
特点 • Jetpack Compose 首个应用。 • 实现了推荐的 Android 架构指南。 • 在真实世界应用的背景下全面整合 Jetpack 库。
项目地址
https://github.com/android/nowinandroid
Github
https://github.com/android/compose-samples