首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Jetpack Compose | 声明式 UI 编程革命

一、创建 Jetpack Compose 项目 1.下载 AndroidStudio 下载地址 developer.android.google.cn/studio/prev… ,这里下载是 2020.3.1...---- 你可以看到预览版 Empty Compose Activity,选择此栏可以创建一个空 Compose 项目。 ?...---- 二、初始 Jetpack Compose 项目结构 1.目录结构 其实项目结构本身和普通 AndroidStudio 项目并没有什么区别,都是根据 gradle 构建 Android 项目...---- 三、初始 Jetpack Compose 项目源码简看 1. MainActivity.kt 在 Android 中,首先自然要看入口 Acrivity。...---- 四、 Jetpack Compose 革命 估计到这来,就开始有好事者来比较 Flutter 和 Compose 哪个好,问该学哪个。Flutter 会不会被 Compose 替代?

1.6K20

使用 Jetpack Compose 提升 Play 商店用户体验

为了让 Jetpack Compose 使用体验更上一层楼,以及了解大家对 Compose 开发、学习方面的内容需求,这里诚邀您参与 Jetpack Compose 使用情况调研, 点击这里 即刻参与调研...在分析了各种选择后,我们做出了 (在当时) 一个大胆决定——使用当时还处于 Alpha 预览阶段 Jetpack Compose。...从那时起,Google Play 商店与 Jetpack Compose 团队密切合作,发布并完善了满足我们特定需求 Jetpack Compose 版本。...开发者工作效率 一年多来 ,我们一直在使用 Jetpack Compose 编写用户界面代码,也得益于 Jetpack Compose 让界面开发变得更加简单。...将 Compose 从 Android 框架中分离出来减少了我们团队直接为 Jetpack Compose 做出贡献开销,从而缩短了改进工作周转时间,使所有开发者受益。

3.2K40

写给初学者Jetpack Compose教程,为什么要学习Compose

Jetpack Compose可以说是近几年里Android开发领域最大一次更新,且未来Android程序开发一定会全面向Jetpack Compose转型。...我记得我应该是在很早阶段就对Jetpack Compose进行了尝鲜,但当时体验下来结果让我直摇头。...经过四年多迭代,Jetpack Compose现在已经相当成熟和稳定,并且绝大多数使用View能完成效果,现在使用Jetpack Compose同样都能够完成。...再加上考虑到现在国内Jetpack Compose普及率仍然很低,因此我觉得现在是时候开始写写Compose相关文章了。...我希望能够完全站在初学者角度上边学边写,看完这个系列后大家能对Jetpack Compose有一个比较全面的认识。 简单起见,从这里开始,我们将Jetpack Compose简称为Compose

51520

Jetpack Compose 自定义 好看TabRow Indicator

背景Jetpack Compose 提供了强大 Material Design 组件,其中 TabRow 组件可以用于实现 Material Design 规范选项卡界面。...但是默认 TabRow 样式可能无法满足所有场景,所以我们有时需要自定义 TabRow 样式。...Jetpack Compose 中使用 TabRow简单使用 TabRow 一般可以分为以下几步:定义 Tab 数据模型每个 Tab 对应一个数据类,包含标题、图标等信息:    data class ...Jetpack Compose TabRow与HorizontalPager 联动笔记共享App我新开发笔记共享App 也用上了TabRow与HorizontalPager联动效果效果图图片自定义...Canvas 高度,即占据了 TabRow 全高fraction 和前后 tab lerping 实现了滑动切换时指示器平滑过渡效果具体可以看代码注释使用方法//默认显示第一页val pagerState

1.3K00

写给初学者Jetpack Compose教程,Modifier

大家好,写给初学者Jetpack Compose教程又更新了。...上一篇文章中,我们学习了Compose基础控件和布局,还没有看过上一篇文章,请参考 写给初学者Jetpack Compose教程,基础控件和布局 。...那么根据我查阅官方文档,Compose对于Modifier能做事情规定很明确,Modifier主要负责以下4个大类功能: 修改Compose控件尺寸、布局、行为和样式。...首先创建一个新Compose项目,如果还不知道如何创建Compose项目的话,仍然请先参考上一篇文章。...我目标是让大家大致了解一下即可,如果感兴趣或者有需要的话,可以再自行深入学习。 在 写给初学者Jetpack Compose教程,为什么要学习Compose? 这篇文章当中,我有提到重组这个概念。

49130

Jetpack Compose 导致编译劣化 | KCP 简介

所以我们初步怀疑可能就是由于compose导致该问题。 验证环节 我们找到了这个模块一个切片节点,接入compose之前和接入compose之后。...未开启compose情况下编译情况 开启compose情况下编译情况 我们对比下均值数据,可以明显发现开启compose前后编译时长发生了明显变化。...Compose编译情况不同于别的ksp,它需要深度参与本次编译,然后修改当前kotlin类编译产物。将dsl等等语法信息进行转化。...所以当我们打开gradle内compose时候,其实也就相当于给kcp添加了个额外编译插件。然后在kotlinCompiler过程中修改当前我们写compose相关代码。...因为对我们来说compose只是试水而已,他改动可能并不会这么频繁.如果直接在原来业务模块内添加compose代码,因为本身模块都已经比较大了,然后又需要增加kotlinCompiler时间,则会导致开发体验直线下降

1K10

写给初学者Jetpack Compose教程,Lazy Layout

本文同步发表于我微信公众号,扫一扫文章底部二维码或在微信搜索 郭霖 即可关注,每个工作日都有文章更新。 大家好,写给初学者Jetpack Compose教程又来了。...经过前面4篇文章学习,相信大家都已经成功入门了Compose编程。不仅了解了Compose核心编程理念(声明式UI),而且已经可以使用Compose编写一些简单小程序了。...因为Compose中还允许一些场景和逻辑都比较合理嵌套滚动,我们主要来看这部分用法。...由于这是Compose专场,我不会对ConcatAdapter用法做更详细讲解,还不了解朋友可以参考这篇文章。...当然可能有些朋友会说,我用就是Compose 1.5版本,Lazy Layout滚动时候还是会感觉卡卡

37010

掌握 Jetpack Compose State,看这篇就够了

,不要错过 :-)Jetpack Compose状态State是什么在 Jetpack 中,state表示一个和 UI 状态相关值。...remember {} 函数告诉 Compose,让 Compose 记住传给它值,这么做可以让 Compose 在每次重新组合 UI 时候,不会每次都执行传给它这个 lambda 函数,导致重复执行...记住这一点(双关):在 Compose 里,我们无法控制我们 Compose 代码会被多频繁调用,也控制不了它执行次数。注意,上面这些讨论只有在 Compose 函数中创建状态时候成立。...这是 Jetpack Compose 中很常见修改状态模式。...Jetpack Compose 允许我们使用 LiveData、RxJava 观察者、Kotlin Flow 来表示 Jetpack Compose状态。

7.3K111

使用Jetpack Compose完成你自定义Layout

概述 Compose已经内置了许多组件,诸如Column,Row,Box等。开发者可以通过这些组合这些已有的组件来定制自己专属组件。...并且在每个子元素自我测量后,当前UI元素可以根据其所需要宽度与高度进行在自己内部进行放置 Compose UI 不允许多次测量,当前UI元素每一个子元素均不能被重复进行测量,换句话说就是每个子元素只允许被测量一次...为避免传统View系统测量布局性能陷阱,Compose限制了每个子元素测量次数,可以高效处理深度比较大UI树(极端情况是退化成链表树形结构)。...Layout Modifier使用示例 有时你想在屏幕上展示一段文本信息,通常你会使用到Compose内置Text组件。...Modifier.firstBaselineToTop( firstBaselineToTop: Dp ) = Modifier.layout { measurable, constraints -> ... } 正如我们在Compose

2.2K20

Jetpack Compose有学必要吗?未来前景将会怎样?

image.png 前言 在今年Google/IO大会上,亮相了一个全新 Android 原生 UI 开发框架-Jetpack Compose, 与苹果SwiftIUI一样,Jetpack...据谷歌官方介绍Jetpack Compose 有以下特点 更少代码:使用更少代码实现更多功能,并且可以避免各种错误,从而使代码简洁且易于维护。...第一章 初识 Jetpack Compose 1. 为什么我们需要一个新UI 工具? 2. Jetpack Compose着重点 3. API 设计 4. Compose API 原则 5....插槽API 这里不是教你Jetpack Compose 一些基本使用方法,而是为啥我们需要Jetpack Compose 一些简洁,让大家对Jetpack Compose 有更深层次了解......因为Android Studio 4.0 添加了对Jetpack Compose 支持,如新Compose 模版和Compose 及时预览...

3.1K30

一起看 IO | Jetpack Compose新特性

Jetpack Compose 1.0 正式版已经发布快一年时间了,我们看到社区正以极大热情采纳和使用 Compose: Kotlin 语法简洁性以及使开发界面变得更快速、更简单声明式开发方式得到了广大开发者们赞赏...与此同时,Twitter 也已经在应用不同部分使用了 Jetpack Compose 并从中受益,因为 "Compose 让我们更容易定义自己组件,并使它们 API 更明确、灵活和直观。"...Airbnb 团队同样也采用了 Compose: "Jetpack Compose 是我们技术战略重要组成部分,生产力因此获得了大幅提高。"...在 I/O 演讲 Jetpack Compose 中常见性能问题 中,Compose 团队介绍了常见性能错误以及这些错误解决方法。...Codelab 全新 Compose 性能说明文档 更新 自定义输入文档 I/O 演讲视频: Jetpack Compose 中常见性能问题 以及 Compose惰性布局 对于新手开发者,

2.2K20
领券