首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Jetpack-Compose 学习笔记(五)—— State 状态是个啥?又是新概念?

Event事件:指的是从应用外部生成的输入,用于通知程序的某部分发生了变化。如用户的点击,滑动等操作。所以 Compose 中,Event 事件一般就是引起 State 状态改变的原因。...如果项目不是纯 Compose 代码,建议还是用 LiveData,因为 LiveData 是通用的,而 MutableState 是与 Compose 集成了,所以 Compose 中使用 MutableState...下面是样例及使用步骤: // code 10 // app/build.gradle plugins { id 'com.android.application' id 'kotlin-android...' id 'kotlin-parcelize' // 第一步:添加此插件 } @Parcelize // 第二步:添加注解及 Parcelable 接口 data class City...参考文献 官方文档——Jetpack Compose 中使用状态 https://developer.android.google.cn/codelabs/jetpack-compose-state

2K30
您找到你想要的搜索结果了吗?
是的
没有找到

Compose 线上分享会内容

Compose 与一些开发者沟通的过程中发现,有很多开发者并不知道怎么接入 Compose,有的可能尝试接入了,但会报各种奇奇怪怪的编译错误,如果在工程接入这块就发生问题了的话,这简直就是还没入门就劝退...Compose 更快地打造 更出色的应用[4] 官方教程文档 : Jetpack Compose 使用入门[5] 跟着官方动手实践:Compose Codelabs[6] 参考官方写的应用Compose-Sample...查看 AGP 4.1.0 ,该版本内置的 compose-compiler 依赖是 androidx.compose:compiler,而正式版本的依赖是 androidx.compose.compiler...我的总结是: 耗时是肯定的,但是不是痛点,我觉得得看项目结构,当项目采用壳工程+组件化方式开发,module 的耗时早就被打 aar 给均摊掉了,主工程集成,并不会影响编译耗时 七、Compose...使用 Jetpack Compose 更快地打造 更出色的应用: https://link.juejin.cn/?

1.2K10

Compose 跨平台现状

,jb-compose 为 commonMain 层使用的通用模块,jetpack-compose 为 Android 所集成的平台模块,compose-desktop 为 desktop 所集成的平台模块...❝这里面还有一个小细节,commonMain 明明依赖的是 jb-compose,Android 依赖的是 jetpack-compose,这两个库参与打包的话,难道不会发生 duplicate class...这里可以看下 ComposePlugin 插件的 RedirectAndroidVariants 类, Android 项目编译的时候,会将 jb-compose 依赖替换成 jetpack-compose...当我打开 README 发现,咋被耍猴了: 开发跨平台应用还需要注意哪些? 既然目前可以支持 Android 和 Desktop,那么,我们开发界面需要注意哪些呢?...,google 一直埋头发展自己的 jetpack compose,如果 jb 与 google 能双向奔赴的话,那该有多好。

3K30

Android Jetpack 更新一览

今天,Google Play 上排名前 1,000 的应用中有 84% 使用 Jetpack。...此外,Hilt 现在已经与 Navigation 和 Compose 集成: 您可以获得一个注释的 Hilt ViewModel,其作用范围是目的地或导航图本身。...WorkManager 的最新版本改进了 对多进程应用的支持,包括将工作请求调度统一到一个进程中的性能优势,以及调度许多请求时限制数据库增长。...Jetpack Compose Jetpack Compose 是用于 Android 上构建原生 UI 的现代工具包,简化并加速了 Android 上的 UI 开发。...Jetpack Compose 目前处于 Beta 版本,并计划 7 月份发布稳定版。本文提到的许多库,以及您可能已经使用的其他库,都专门推出了与 Jetpack Compose 集成的功能。

1.5K20

Jetpack Compose Alpha 版现已发布!

图片 作者 / Google 产品总监 Karen Ng Jetpack Compose 是一个现代化的 UI 工具包,旨在帮助开发者通过原生平台 API 简单快捷地全 Android 平台构建精美应用...开发效率的提升离不开三个重要因素: 编程语言、集成开发环境 (IDE) 以及用户界面 (UI) 框架。我们为大家带来的 Jetpack Compose,目的就是为了让您 (我们也是!)...编译器插件 适用于 Compose 的示例数据 API Romain 的视频 - Jetpack Compose:https://www.bilibili.com/video/BV1Vv411q7Hn...当基础数据发生变化时,Compose 框架会自动为您更新 UI 层次结构,从而使您可以轻松快速的构建 UI。...借助 Compose 布局预览,您可以预览 Compose 组件,而无需将应用部署到设备或模拟器。开发应用时,您的预览会更新,以帮助您更快地检查变更。

4.1K30

一起看 IO | Jetpack 组件的新特性

Google Play 中,绝大多数应用都使用了 Jetpack 实现应用架构。今天,排名前 1,000 的应用中,超过 90% 使用了 Jetpack。...Navigation 组件现已通过 navigation-compose 组件集成到了 Jetpack Compose 中,从而允许可组合函数作为您应用中的目的地。...优化启动时间 应用的启动时间对用户体验影响巨大,特别是应用安装完成后立即使用时尤为明显。为了提升首次启动的体验,我们创建了 Baseline Profiles。...这会使您的应用加载的更快,并且可以在用户首次与应用交互减少丢帧。 我们已经开始 Google 内部使用 Baseline Profiles。...每当记录报告,都会提供相应的信息,这样不但可以帮助开发者了解问题是何时发生的,更可以了解到用户当时在做什么。这有助于确定应用中存在问题的区域,以便稍后进行解决。

3.1K20

Android Compose开发

此外,当两项更新以出人意料的方式发生冲突,也很容易造成异常状态。例如,某项更新可能会尝试设置刚刚从界面中移除的节点的值。一般来说,软件维护的复杂性会随着需要更新的视图数量而增长。...Compose 编程思想 | Jetpack Compose | Android Developers Compose 布局基础知识 | Jetpack Compose | Android...Developers 原创:写给初学者的Jetpack Compose教程,基础控件和布局 原创:写给初学者的Jetpack Compose教程,Modifier 原创:写给初学者的Jetpack Compose...它会自动适当的时间启动和取消协程,确保 Compose 组件的生命周期内正确处理副作用。当组件被创建,LaunchedEffect 会启动协程,当组件被销毁,它会自动取消协程。... LaunchedEffect 的代码块中,你可以执行各种需要在后台进行的操作,例如网络请求、数据库访问、文件读写等。由于这些操作是协程中执行的,因此它们不会阻塞主线程,确保应用保持响应性。

26310

谷歌社区说|聊聊Compose跨平台与KMM

大家好我是黄林晴,也是图书《Android Jetpack开发:原理解析与应用实战》的作者。...KMM可以简化多平台应用程序的开发。通过KMM,开发者可以 iOS 、 Android、Desktop与Web 应用程序之间共享业务逻辑的通用代码,必要也可以编写特定于平台的代码。...我们这里直接将返回展示展示文本中,最终实现的程序是这个样子的。 这个UI我们将在后面的Compose Multiplatform 中实现。这样我们就实现了双平台一个简单的数据请求的例子。...我们可以借助KMM插件Android Studio中快速的创建KMM项目,但是当前如果我们想快速创建Compose Multiplatform 项目只能借助新版的IDEA。...与原生UI的互操作性 使用Jetpack Compose开发Android的时候,有些场景下我们可能需要让Jetpack Compose与XML 嵌套使用,那么跨平台中肯定也会存在这种场景,iOS

66310

【建议收藏】Jetpack Compose编程知识全汇总 (含详细实例讲解)

以下三种方式可初步体验: 尝试使用Jetpack Compose 示例应用 创建支持Jetpack Compose 的新应用 现有项目中支持Jetpack Compose 基于现状,我主要介绍第三种方式...`widthDp: Int`: Compose中渲染的最大宽度,单位为dp。 8. `heightDp: Int`: Compose中渲染的最大高度,单位为dp。...如果想使用Compose的情况下,又不想迁移整个应用,可以xml里面增加ComposeView,类似于占位符,然后Actviity/fragment中寻找该控件并调用setContent方法即可...Jetpack Compose应用1 开始前的准备 创建DEMO 遇到的问题 [1240] 2. Jetpack Compose应用2 3....Jetpack Compose应用做一个倒计时器 数据结构 倒计时功能 状态模式 Compose 布局 绘制时钟 [1240] 4.

6.2K60

谷歌大佬强势分享《Jetpack Compose 权威指南》,带你参透声明式UI的终极奥义!

Android Jetpack 的支持 Compose 刚刚发布的时候,Android Jetpack 中的很多其他库都第一间给予了 Compose 支持,从而丰富了 Compose 的开发生态。...谷歌官方的 《Jetpack Compose 使用前后对比》 一文说道:Tivi应用在使用了 Compose 后,我们发现 APK 大小缩减了 41%,方法数减少了 17%。...这份资料旨在给希望了解、学习、应用Android Jetpack Compose的小伙伴一个参考资料: 第一章 初识Jetpack Compoese 1. 为什么我们需要一个新的UI 工具? 2....Jetpack Compose应用1 开始前的准备 创建DEMO 遇到的问题 2. Jetpack Compose应用2 3....Jetpack Compose应用做一个倒计时器 数据结构 倒计时功能 状态模式 Compose 布局 绘制时钟 4.

4.1K30

Jetpack Compose for Desktop: 里程碑1发布

深入详解 Jetpack Compose | 优化 UI 构建 中谷歌介绍了为什么要设计 Jetpack Compose 来完成原生 Android 的开发,如今 Jetpack Compose for...从本质上讲 Compose for Desktop 允许开发者通过组合函数代码中声明桌面 UI,并且它会自动响应应用的状态同步。...该项目是基于 Google 的 Jetpack ComposeJetpack Compose 一个用于 Android 的 UI开发工具包,Compose for Desktop 可以让 Android...桌面特定的API 为了让开发者的应用能够集成其他的桌面 UI,Compose for Desktop 附带了桌面特有的API,这些 API 主要是用于特定的桌面功能,它们的结构与其他 Compose API...Compose for Desktop 应用程序就可以解锁这些 Java 的图形API,该集成还允许开发者逐渐将使用这些框架的应用程序迁移到 Compose for Desktop 。

4.6K30

Android Jetpack 学习笔记(1) - 概述

camera * 构建移动相机应用compose * 使用描述界面形状和数据依赖项的可组合函数,以编程方式定义界面。...navigation * 构建和组织应用内界面,处理深层链接以及屏幕之间导航。 paging * 页面中加载数据,并在 RecyclerView 中呈现。...test * Android 中进行测试。 work * 调度和执行可延期且基于约束条件的后台任务。 ads 获取广告 ID(无论是否通过 Play 服务)。...这些 API 用来简化请求权限。 CameraX CameraX 可以在其中 90% 的android 设备上运行。提高了相机应用的可靠性,以确保 API 各种设备上的最佳行为。...Jetpack Compose — Android 的新 UI 工具包 Jetpack Compose是 Android 的全新现代 UI 工具包,此版本添加了许多新功能:视图互操作性、更多 Material

1.3K20

Jetpack Compose Beta 版现已发布!

构建该工具包的目的在于与现有 Android 应用Jetpack 开发库集成,您可以将 Android 视图与 Compose 相结合,按照您自己的节奏应用 Compose。...我们期待看到您使用 Compose 构建的内容, 并根据您的反馈和功能请求来优化我们的 API,并确定我们工作方向的优先级。...您可以 Android 视图中嵌入 Compose UI,并在 Compose 中使用视图。我们 互操作性文档 中提供了多种应用策略。...除了视图互操作性,我们还 集成了常用开发库,帮助您将 Compose 添加到现有应用中,而无需重写或重新设计应用。...我们期待收到您对应用中采用 Compose 的 反馈,您也可以 Kotlin Slack 的 #compose 频道中参与讨论或在下方留言区和我们分享。

5.6K10

Android 11 Beta 版正式发布!以及众多面向开发者的重磅更新

这些更新包括 Kotlin 协程、Jetpack Compose 工具包的最新进展、 Android Studio 中更快地完成构建,以及 Play Console 的全新改版。...Bubbles 可以让用户在手机上多任务切换依然保持对话可见及可用。消息和聊天应用可以通过基于通知的 Bubbles API, Android 11 上提供这种全新体验。...权限自动重置: 如果用户很长一段时间里未使用某应用,Android 11 将自动重置所有与该应用关联的权限并通知用户。在用户下次使用该应用时,应用可以再次请求权限。阅读官方文档了解更多。...Android 模拟器现在直接集成 IDE 中,您可以并排显示测试中的应用,同时查看不同设备上的运行结果。我们还改进了设备管理器,让您更轻松地管理多个设备。...Kotlin 编译器插件 Compose 预览注解 实时交互式 Compose 预览 将单个的 Composable 部署至设备 Compose 代码补全 适用于 Compose 的示例数据 API

1.7K50

回顾 | Android Jetpack 重要更新

正式发布 Jetpack 两年后的今天,我们已经看到大量的应用开发开始采用 Jetpack 中的开发库,这其中既包括大型开发团队的产品,也有那些刚起步的应用。...Hilt 已经集成了对 Jetpack 开发库和 Android 系统类库的支持。...App Startup — 应用启动初始化组件 App Startup 开发库提供了一种相当直接且高效的方式,来帮助程序启动过程中初始化组件。...输入法集成自动填充功能 Android 11 为软键盘引入了一系列系统 API 来显示自动填充内容,并且提示内容可以来自其他应用,比如密码管理器。...Jetpack Compose — 全新的 Android UI 开发框架 Jetpack Compose 是全新的现代 Android UI 开发框架,目前发布了开发者预览第二版。

23540

Android Dev Summit 21 精彩内容盘点

12L 针对大屏设备和折叠屏对界面进行了优化,例如当屏幕宽度大于 600dp 将默认显示两列内容、引入了类似 Chrome OS 的 Dock 栏等,同时支持拖拽分屏等功能,同时不同窗口中启动多个应用...多窗口模式下的 App 不能再依赖 Display.getRealMetrics() 获取窗口尺寸,当屏幕状态变化导致,OnConfigurationChanged 发生,使用 WindowManager...Jetpack Compose 能更好地以响应式的方式处理 OnConfigurationChanged 的 UI 变化,非常适合配合在 12L 的设备上使用。...,会发生 ForegroundServiceStartNotAllowedException 异常,这是开发中需要特别注意的。...Jetpack Compose ---- Compose 新增 androidx.compose.material3 库,支持开发 Material You 主题风格的 UI。

1.7K20

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

分析了各种选择后,我们做出了 (在当时) 一个大胆的决定——使用当时还处于 Alpha 预览阶段的 Jetpack Compose。...优先考虑 当我们对新的界面渲染层使用 Jetpack Compose ,需要优先考虑以下两点: 开发者的工作效率 : Play 商店团队有数百个工程师改进代码,因此开发起来应该很容易 (也很有趣)。...开发者的工作效率 一年多来 ,我们一直使用 Jetpack Compose 编写用户界面代码,也得益于 Jetpack Compose 让界面开发变得更加简单。...,并且可以具体应用级别和库级别进行定义 (适配 Compose 的开发者可免费使用此功能!)。...最初的集成实验中,我们遇到了双栈问题: 单个用户会话中同时运行 Compose 和视图类渲染非常占用内存,尤其是低端设备上。

3.2K40
领券