什么是Compose
引用谷歌官方的一句话“Jetpack Compose 是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,帮助您使用更少的代码、强大的工具和直观的 Kotlin API,快速打造生动而精彩的应用。”
官方地址
使用Compose创建一个Hello Android
老规矩,学习新只是的必要流程
1,先把Android studio 升级到这个版本![Android studio 版本](https://i-blog.csdnimg.cn/blog_migrate/2d23169650c4647c284e919f7e3d0a1a.png#pic_center)
2,新建项目,直接new一个新Compose项目一直下一步即可
需要注意的是Compose支持的最小api是21以上
如果在构建项目时候或运行项目时候出现以下错误时需要使用jdk11
我们这边直接用Android studio自带的jdk
3,下面我们就可以来写我们第一个Compose版本的Hello Android了
先依赖Compose工具包
dependencies {
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation "androidx.compose.ui:ui:$compose_version"
implementation "androidx.compose.material:material:$compose_version"
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1'
implementation 'androidx.activity:activity-compose:1.3.0-alpha06'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
debugImplementation "androidx.compose.ui:ui-tooling:$compose_version"
implementation "androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02"
implementation "androidx.navigation:navigation-compose:2.4.0-alpha05"
}
ext {
compose_version = '1.0.1'
}
再编写代码运行
结束收工!!
有人要问了,这就结束了?我熟悉的xml文件呢,我熟悉的TextVeiw控件呢?,还是我没有预览我怎么看控件位置对不对?
对,就时这么简单,使用Compose写项目不需要再去编写一个格外的xml文件来加载各个控件和进行布局再引用它的id这么麻烦,Compose目的就是让你通过更少的代码来打造应用。
TextVeiw对应的就是上面代码Text(),用法也是大同小异
如果需要看预览还需要写一段代码。
这样我们就可以预览了,是不是发现少了很多步骤就能写出一样的效果。
4,结束
下面学习篇的(1)的内容了,之后我还会更新学习篇(2)。学习得一步一步来,虽然第一篇很简单,但是我们去理解它后,学习后面的知识就不会有很多阻碍了。
如果大家要自己学习后面知识可以看看官方教程。
官方教程
谢谢大家观看。