
- Jetpack Compose是一个独立的工具包,旨在简化UI开发。 它将反应式编程模型与Kotlin编程语言的简洁性和易用性相结合
- 注意:Jetpack Compose目前处于预Alpha研究的早期阶段。 其API尚未完成,因此不应在生产中使用
- 译者的话:本文底部是指向Google I / O'19大会上有关Jetpack Compose的视频报告的链接
基本原则
Kotlin的简洁风格
- 利用Kotlin的优势-简洁,安全并与Java完全兼容。 旨在显着减少标准代码量,使您可以专注于代码,并有助于避免内部类错误
陈述式
- UI组件的完全声明式定义,包括渲染和创建自定义布局。 它只是将您的UI描述为一组可组合的函数,并且平台控制UI的优化并自动更新小部件层次结构
兼容的
- 与现有的小部件兼容,以便您可以混合和组合,以及根据需要进行调整以直接访问所有Android和Jetpack API
允许您创建漂亮的应用程序
- 开箱即用地支持Material Design和动画,因此可以轻松创建充满动感的精美应用程序
加快发展
- 通过减少代码编写和使用类似于“应用更改”的工具并实时查看更改来加快开发速度
快速复习
- Jetpack Compose由Android Open Source Project提供支持 。 它包含两个主要组件:
- 撰写用户界面库,其中包含主要的用户界面工具包,即 标记,输入字段,文本字段,动画,样式,小部件和图形
- 组成编译器,由Kotlin编译的本机插件,包含布局功能并自动更新UI层次结构
- 组合应用程序由可组合函数组成,这些组合函数将应用程序数据转换为UI层次结构。 功能是创建新的UI组件所需的全部。
要创建可组合函数,只需在函数名称中添加@Composable批注。 在后台,Compose使用自己的Kotlin编译插件,以便在后台数据更改时,可重复调用可组合函数以生成UI层次结构的更新。 下面的一个简单示例在屏幕上打印一行:
import androidx.compose.* import androidx.ui.core.* @Composable fun Greeting(name: String) { Text ("Hello $name!") }
- 库API位于AOSP目录中的frameworks / support / ui 。 可在以下框架/支持/撰写链接处获取撰写编译器和运行时代码
撰写UI库
- Jetpack Compose UI库包含以下模块:
- android-text /-特定于Android的文本实现
- android-view /-现有Android小部件的包装和适配器
- 动画/-动画组件
- animation-core /-动画系统的内部组件
- 核心/-系统的基本类,包括基元,图形和图形
- 框架/-系统提供的基本组件,用作构建块。 包含类Draw,Layout,Text等。
- 布局/-基本布局组件
- material /-考虑到Material Design规范创建的一组UI组件
- 平台/-内部实现,可将Android实现与主机端的测试分开
- 测试/-测试框架
- 文字/-文字引擎
来自翻译
在Google I / O'19上与Jetpack Compose进行视频对话