使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
check_circle
教程:Jetpack Compose 基础知识
可选
了解 Compose 的基础知识,以及如何使用声明式函数构建简单的界面组件。了解可组合函数、基本布局以及 Material Design、列表和动画在 Compose 中的工作原理。
check_circle
Jetpack Compose 概览
ondemand_video
视频
可选
简要了解 Jetpack Compose,了解什么是声明式界面工具包,以及如何使用 Compose 构建精美的界面。
check_circle
Compose 编程思想
可选
了解 Compose 的声明式方法与您过去可能使用过的基于视图的方法有何不同。
check_circle
Jetpack Compose 基础知识
emoji_objects
Codelab
开展动手实践,学习声明式界面的基础知识,了解状态、布局和主题。您将看到什么是可组合项和修饰符,如何使用基本界面元素(如行和列),以及如何为应用指定状态。
check_circle
迁移到 Jetpack Compose
emoji_objects
Codelab
分步介绍如何将基于 View 的应用实际迁移到 Jetpack Compose,以了解如何逐步采用 Compose,并探索其对架构和测试的影响。
check_circle
Compose 中的基本布局
emoji_objects
Codelab
了解 Jetpack Compose 中布局的运作方式,包括内置布局、修饰符,以及如何构建您自己的自定义布局。
check_circle
Compose 中的延迟布局
ondemand_video
视频
可选
了解如何在 Compose 中制作滚动列表,以及这样为什么比使用 RecyclerView 更简单。了解为什么不允许嵌套滚动列表、如何采用不同方式实现嵌套、为什么列表项的大小绝不能为 0 像素、为什么提供唯一的键非常重要,以及项动画如何运作。最后,您将探索如何显示网格、使用自定义布局管理器,以及了解如何改进性能优化功能以提高滚动速度。
check_circle
Jetpack Compose 主题设置
emoji_objects
Codelab
亲身体验 Compose 中的 Material Design,了解如何设置应用颜色、排版和形状的主题,以及如何支持浅色和深色主题。
check_circle
Jetpack Compose 动画
emoji_objects
Codelab
了解如何使用 Compose Animation API。我们将从最简单的值动画开始,并通过一些常见的动画模式学习其他 API。此外,我们还介绍了一些更高级的主题,例如动画自定义和轻触手势动画。
check_circle
Jetpack Compose 中的状态
emoji_objects
Codelab
了解与“在 Jetpack Compose 中使用状态”相关的核心概念,构建内容丰富的交互式 Android 应用。
check_circle
Jetpack Compose 中的高级状态和副作用
emoji_objects
Codelab
学习与 Jetpack Compose 中的状态和副作用 API 相关的高级概念。了解如何为复杂的有状态可组合项创建状态容器、通过 Compose 代码创建协程和调用挂起函数,以及针对不同的用例触发副作用。
check_circle
Jetpack Compose Navigation
emoji_objects
Codelab
了解如何在 Compose 中使用 Jetpack Navigation 库,在应用中导航,使用参数进行导航,支持深层链接以及测试导航。
check_circle
Jetpack Compose 中的常见性能问题
ondemand_video
视频
可选
Jetpack Compose 就像变魔法一样,但当这种魔法未达到您预期的效果时,您会怎么做?本演讲将就性能、常见错误和避免方法来介绍 Jetpack Compose 最佳实践。
check_circle
在 Jetpack Compose 中进行测试
emoji_objects
Codelab
了解如何测试 Jetpack Compose 界面。编写您的第一项测试,了解隔离测试、调试测试、语义树和测试同步。
check_circle
使用 Jetpack Compose 改进应用的无障碍功能
emoji_objects
Codelab
了解如何提高应用的易用性,尤其是对于残障用户来说。增加触摸目标大小、添加内容说明、创建自定义操作等。
Jetpack Compose 测验
测试您对 Compose 的掌握情况,赢取 Jetpack Compose 徽章。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"没有我需要的信息"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"太复杂/步骤太多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"内容需要更新"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/代码问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{}
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],[]]