是时候学习Jetpack Compose了!!!

前言

Android上View.java的存在已经有十多年之久了,代码量也达到了惊人的3万行。而且很多常用的控件例如TextView、ImageView等又都直接或者间接继承自View,都说组合优于继承,所以针对View的这个设计,现在看来已经是落伍了。

去年(2019)年的时候,在AndroidDevSummit上,Google推出了Compose,当时眼前一亮,觉得Android上的UI开发要有一个全新的明天了。时隔一年,Compose已经从dev版本逐渐开发到了目前的alpha 07版本。至于Compose是什么,有什么优点,在Google之前的各种视频中都有讲解了这里不再赘述,官网介绍请移步Jetpack Compose,官方文档请移步Compose 文档

其他文章的内容是从Compose alpha 07版本开始编写的,目前一直在紧跟Google的步伐进行更新,现在已进行到Compose Beta 01

重大版本变更

alpha12

  • setContent{}
    setContent从androidx.compose.ui.platform移到了androidx.activity.compose,需引入implementation "androidx.activity:activity-compose:1.3.0-alpha02"
  • ConstraintLayout
    约束布局迁移到了新包中,需引入implementation "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02"

计划任务

跟最初学习View的时候一样,我们需要一个控件一个控件的去学习了解,先了解他的属性然后了解他的用法。
下面的任务列表是先基于xml中的控件名,然后对照Compose中的控件名展示出来的,目前还不完整,因为我也还在一步步的熟悉中,所以会根据进度慢慢的补充上来,有超链接的是已经更新完了的,请选择性阅读。

0、修饰符

  • Modifier基础篇
    可以修饰Compose UI元素或者向其添加行为,例如背景、填充、点击事件、宽高等属性。

1、控件

声明:控件需要引入的包大部分是androidx.compose.material的。为什么?因为Google在后面的一些更新中,将很多控件都从foundation包中移到了material包。也就是说我们后面的控件等内容的讲解大部分需要基于androidx.compose.material包中的相关控件。






2、布局

声明:目前alpha08版本的布局相关内容需要引入androidx.compose.foundation包:

3、弹窗

4、动画

5、自定义

6、主题

  • Theme
    让你的App更加花里胡哨一点

7、搭配其他Jetpack等组件

单纯的使用Compose已经满足不了我们了,怎么和其他Jetpack组件搭配是我们接下来的任务了。

  • 15
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值