Android Compose入门

3,697 阅读2分钟

一、环境配置

1、需要kotlin的版本为1.4.30或者更高。
image.png 2、需要配置Android的最低版本为21或者更高。 image.png 3、需要在app模块中的build.gradle中打开compose开关及配置kotlin插件 image.png
4、最后需要添加Compose的依赖

//添加 Material Design 3
implementation 'androidx.compose.material3:material3:1.1.1'
//或者添加 Material Design 2
implementation 'androidx.compose.material:material:1.1.1'
//或者跳过材料设计,直接在基础组件上构建
implementation 'androidx.compose.foundation:foundation:1.1.1'
//或者只导入底层工具包系统的主要api
implementation 'androidx.compose.ui:ui:1.1.1'

//Compose预览相关
implementation 'androidx.compose.ui:ui-tooling-preview:1.1.1'
debugImplementation 'androidx.compose.ui:ui-tooling:1.1.1'

//与activity结合使用
implementation 'androidx.activity:activity-compose:1.6.1'
//与viewModel结合使用
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.5.1'
//与liveData结合使用
implementation 'androidx.compose.runtime:runtime-livedata'
//与RxJava结合使用
implementation 'androidx.compose.runtime:runtime-rxjava2'

二、第一个Compose程序

1、新建项目选择Empty Compose Activity选项 image.png 一路Next即可。 2、项目结构 image.png
与普通项目的区别就是少了layout文件夹,多个theme文件夹,下面我们来看一下MainActivity中的内容: image.png 3、分析MainActivity的变化 我们可以看到原来的setContentView换成了setContent,这个方法是activity-compose中的一个拓展方法,用来加载可组合函数(Composable)。

可组合函数(Composable)

这个函数用来将数据转换为界面
1、这个函数带有@Composable注释,所有的可组合函数都必须带这个注释。
2、可组合函数可以接收参数。
3、可组合函数没有返回值。
4、可组合函数无法修改属性或全局变量,只用来做界面描述。

ComposeTestTheme函数

image.png
点开我们可以看到这也是一个可组合函数,名称为项目名字+Theme,这个函数用来展示项目主题。

Surface函数

这是一个表面容器,用来修饰被它包裹的内容。

预览函数(preview)

这个函数用来预览界面,不同于xml方式,在compose中想要查看布局效果得编写一个预览函数。
1、这个函数使用@Preview注解注释。
2、不能携带参数。 image.png
在项目的右上角可以切换视图预览