请教下安卓大佬们关于 Jetpack Compose

2022-03-18 16:51:09 +08:00
 yilindoudou

因工作需要, 要新开项目就想 kotlin + compose 不知道是否可行? 我本身不是做安卓的, 所以想请教下这么做有没有坑? 比如第三方或者有无兼容问题 再或者使用 kotlin + 老的 xml 布局 -- 因为看了 compose 构建 listView, 就实在不想再看之前 adapter 那一套了

请看到的大佬们给点意见🙏🙏, 感谢

9419 次点击
所在节点    Android
11 条回复
yuyu2140
2022-03-18 17:21:45 +08:00
去年下半年陆续写过两个小 app ,体验还是很不错的,大概遇到了两个问题,也可能是自己学艺不精,很多东西还没时间深入研究:

1. LazyVerticalGrid 结合 coil 加载大约 1000 张照片流时,滚动的时候卡卡的,没有 RV 流畅

2. 用 AndroidView 包裹 Webview 加载地图类网页时,地图无法加载,显示空白,文字图片正常,貌似 webgl 兼容性问题?
yanheR
2022-03-18 17:23:17 +08:00
可以和原来那套 View 的东西混着写,还行,坑肯定是有的,毕竟这才发了稳定版没多久
crayygy
2022-03-19 21:07:59 +08:00
@yuyu2140 第一个问题我们也遇到了,官方表示是有性能问题的,目前还在解决,所以我们遇到列表的都不用 Compose

我个人觉得这个更像是在 Android View 层级包了一层类似 Flutter 的 Surface 渲染机制,只不过原本的 Flutter 是只能在 Activity 级别套用,而这个新的机制是在 View 级别的,并且语言是 Kotlin
crayygy
2022-03-19 21:10:11 +08:00
工作需要我强烈建议不要用,尤其是对 Android 本身机制了解不够充足的情况下,遇到了问题都不知道是自己写的不对还是 Compose 自身的问题,用更成熟的方式至少遇到问题了能找到解决方案。
个人学习是可以学的,以后趋势还是会从命令式布局往响应式布局方案上转移的。
yilindoudou
2022-03-20 15:04:26 +08:00
@crayygy 已经吃瘪了... 我能搞明白 mvc 那一套就行了... 分开基本上都明白, 但是不明白特性就很尴尬... 不知道是干嘛,
昨晚上试了下给按钮设置颜色(分状态) 就给搞了半天
yilindoudou
2022-03-20 15:04:56 +08:00
@yuyu2140 不敢用... 太菜 kotlin 就行了, 不敢奢望 compose
fromzero
2022-04-18 19:08:11 +08:00
其实很简单 compose 官方文档看一遍
fromzero
2022-04-18 19:09:17 +08:00
@fromzero 再去 android 的 compose sample 运行多看看。关键是搞懂状态机,单向数据流,数据驱动 ui 这些概念,其他都很简单
yilindoudou
2022-04-19 08:36:57 +08:00
@fromzero 就准备用 compose 这一套, 就是很多概念不太清楚, 只能慢慢的学了
yilindoudou
2022-04-19 08:38:04 +08:00
compsoe 生成 UI 太方便, 实在不想再用 adapter 那一套, 老的一套也不怎么明白.... 然后就是兼容性问题, 低版本上效果并不是太好, 比如 Navigation
fromzero
2022-04-19 16:10:59 +08:00
@yilindoudou 是的 声明示 ui 已经是未来,前端都玩烂了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/841311

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX