1. 开始之前
恭喜您!您已经构建了您的第一个应用程序,并了解了 Jetpack Compose 的基础知识。现在您已准备好将学到的知识付诸实践。
这些练习侧重于如何使用您所学的 UI 可组合项来构建应用程序。这些练习的灵感来自现实世界的用例,其中一些您可能在之前遇到过。
这些练习为您提供了实现所需资源,例如图像和字符串。字符串资源包含在 UI 中显示的文本。您将这些字符串添加到 strings.xml
文件中,并在代码中使用它们。
此外,这些练习还为您提供了一组规范,例如文本内容的字体大小或 UI 组件周围的填充。这些规范有助于您构建一致的 UI,并经常指导开发人员可视化和构建屏幕。在与团队合作进行组织工作时,您可能会遇到类似的规范。
某些练习可能需要您使用 Modifier
。在这种情况下,请参阅每个问题中提供的“参考资料”部分,其中包含指向与修饰符或属性相关的文档的链接。您可以阅读文档并确定如何将这些概念整合到应用程序中。理解文档的能力是您应该培养的重要技能之一,以扩展您的知识。
解决方案代码位于最后,但在查看答案之前,请尝试解决练习。将解决方案视为实现应用程序的一种方法。解决方案代码使用了您迄今为止学到的基本可组合项和概念。还有很大的改进空间,因此请随时尝试不同的方法。
以您舒适的速度完成问题。鼓励您花尽可能多的时间仔细解决每个问题。
最后,您应该使用 Android Studio 为这些练习创建单独的项目。
先决条件
- 完成 使用文本可组合项构建简单的应用程序代码实验室.
- 完成 将图像添加到 Android 应用程序代码实验室.
- 最新版本的 Android Studio
- Kotlin 编程语言的基础知识
- 能够使用 Android Studio 中的默认模板创建 Android 项目。
- 了解不同的
Composable
函数,例如Text
、Image
、Box
、Column
和Row
函数 - 了解用于 UI 装饰的
Modifier
类
您需要什么
- 一台装有 Android Studio 并能够访问互联网的计算机。
2. Compose 文章
Learn Together 应用程序显示有关多个 Jetpack 库的文章列表。用户可以选择自己喜欢的主题,并了解其最新进展。
在本练习中,您将构建该应用程序的屏幕,该屏幕将显示 Jetpack Compose 的教程。您将使用本问题“资源”部分中提供的图像和字符串资源。
最终截图
完成实现后,您的设计应与该截图相匹配。
UI 规范
遵循此 UI 规范
- 将图像设置为填充整个屏幕的宽度。
- 将第一个
Text
可组合项设置为24sp
字体大小和16dp
填充(开始、结束、底部和顶部)。 - 将第二个
Text
可组合项设置为默认字体大小、16dp
填充(开始和结束)以及Justify
文本对齐。 - 将第三个
Text
可组合项设置为默认字体大小、16dp
填充(开始、结束、底部和顶部)以及Justify
文本对齐。
资源
Jetpack Compose 教程
Jetpack Compose 是用于构建原生 Android UI 的现代工具包。Compose 通过更少的代码、强大的工具和直观的 Kotlin API 简化和加速了 Android 上的 UI 开发。
在本教程中,您将使用声明性函数构建一个简单的 UI 组件。您调用 Compose 函数来指定所需的元素,Compose 编译器将完成其余工作。Compose 以可组合函数为基础构建。这些函数使您能够以编程方式定义应用程序的 UI,因为它们使您能够描述 UI 应如何显示并提供数据依赖项,而不是关注 UI 构建过程,例如初始化元素并将其附加到父元素。要创建可组合函数,您需要在函数名称中添加 @Composable 注释。
提示:哪种可组合项将子项垂直对齐?
参考资料
3. 任务管理器
Task Manager 应用程序允许用户管理日常任务并检查需要完成的任务。
在本练习中,您将构建用户在完成某一天的所有任务后看到的屏幕。
最终截图
完成实现后,您的设计应与该截图相匹配。
UI 规范
遵循以下 UI 规范
- 将所有内容垂直和水平居中对齐到屏幕上。
- 将第一个
Text
可组合项设置为Bold
字体粗细、24dp
顶部填充和8dp
底部填充。 - 将第二个
Text
可组合项设置为16sp
字体大小。
资源
此图像,您需要下载并导入您的项目,以及这些字符串
所有任务已完成
干得好!
4. Compose 象限
在本练习中,您需要应用迄今为止学到的绝大多数概念,然后更进一步探索新的 Modifier
和属性。这可能看起来像一个额外的挑战,但别担心!您可以查看本问题的“参考资料”部分,其中包含指向这些 Modifier
类和属性的链接,并将其用于实现。
您需要构建一个应用程序,该应用程序将显示有关您所学到的 Composable
函数的信息。
屏幕被分成四个象限。每个象限都提供 Composable
函数的名称,并用一句话进行描述。
最终截图
完成实现后,您的设计应与该截图相匹配。
UI 规范
请遵循以下 UI 规范,这些规范适用于整个屏幕
- 将整个屏幕分成四个相等的部分,每个部分都包含一个 Compose 卡片,并显示有关
Composable
函数的信息。
请遵循以下规范,这些规范适用于每个象限
- 将整个象限(开始、结束、顶部和底部)设置为
16dp
填充。 - 将每个象限中的所有内容垂直和水平居中对齐。
- 将第一个
Text
可组合项格式化为粗体,并将其设置为16dp
底部填充。 - 将第二个
Text
可组合项设置为Default
字体大小。
资源
这些颜色
Color(0xFFEADDFF)
Color(0xFFD0BCFF)
Color(0xFFB69DF8)
Color(0xFFF6EDFF)
这些字符串
Text 可组合项
显示文本并遵循推荐的 Material Design 指南。
Image 可组合项
创建一个可组合项,该可组合项将布局和绘制给定的 Painter 类对象。
Row 可组合项
一个布局可组合项,它将子项放置在水平序列中。
Column 可组合项
一个布局可组合项,它将子项放置在垂直序列中。
参考资料
Weight 修饰符
函数FontWeight.Bold
属性TextAlign.Justify
属性