Compose 提升状态的场景

Where to hoist that state in Compose? 了解在 Jetpack Compose 中提升状态的方式和场景。

1. Composable functions

点击 Message 展示消息时间。

Not hoisting is a valid option.

这个 UI 逻辑例子不需要提升状态。

2. State hoisting

在下面的例子中,消息列表的状态需要提升。

Place state in the lowest common ancestor.

3. Plain state holder class

使用 state holder class 做状态提升,例如 LazyListState。

LazyListState 抽象了 scrollPosition 同时暴露了应用逻辑的方法,比如 scrollToItem()、scroll()、animateScrollToItem()。

4. Android architecture Components(AAC)ViewModel

使用 ViewModel 做状态提升。

5. Recap

Keep state as low as possible.

相关推荐
qq_717410013 小时前
关闭相机-闪光灯功能
android
TeleostNaCl4 小时前
如何在 Android debug 的时候使用 adb install 命令降级安装应用
android·经验分享·adb·android runtime
微学AI4 小时前
生成式AI应用平台架构设计:ModelEngine核心能力与工程化实践路径
android·人工智能·rxjava
kkk_皮蛋4 小时前
从零开始:用 Android Studio 开发一个 AI 智能日记 App
android·ide·android studio
2501_916007474 小时前
在 CICD 中实践 Fastlane + Appuploader 命令行,构建可复制的 iOS 自动化发布流程
android·运维·ios·小程序·uni-app·自动化·iphone
煤球王子4 小时前
简单了解:Android14中的Input event
android
2501_915921435 小时前
从 HBuilder 到 App Store,uni-app 与 HBuilder 项目的 iOS 上架流程实战解析
android·ios·小程序·https·uni-app·iphone·webview
天向上5 小时前
ubuntu系统adb shell报错 ADB server didn‘t ACK
android·linux·ubuntu·adb
xiaoyan20155 小时前
自研2025版flutter3.38实战抖音app短视频+聊天+直播商城系统
android·flutter·dart