随笔分类 -  Kotlin

摘要:问题 在使用 Jetpack Compose 延迟列表时遇到一个坑,简单记录一下。直接上代码: 这个代码看起来也没有什么问题,滑动正常,点击滑动到顶部也正常。 但是极端操作:在一边滑动列表一边点击按钮,就出问题了。这样再点击按钮,就不生效了。从日志来看,点击时协程发射值没有问题,但是 collect 阅读全文
posted @ 2024-06-27 23:11 SharpCJ 阅读(113) 评论(0) 推荐(0) 编辑
摘要:Jetpack Compose(8)——嵌套滚动目录前言一、Jetpack Compose 中处理嵌套滚动的思想二、Modifier.nestedScroll2.1 NestedScrollConnection2.2 NestedScrollDispatcher三、实操讲解3.1 父组件消费子组件给过来的事件——NestedScrollConne 阅读全文
posted @ 2024-06-27 22:18 SharpCJ 阅读(988) 评论(0) 推荐(0) 编辑
摘要:Jetapck Compose 去除点击水波纹效果问题:Jetpack Compose 中使用 Material 包中的控件,点击默认会有水波纹效果。如何去除这个点击水波纹效果呢? 看下 Modifier.clickable 的签名: fun Modifier.clickable( interactionSource: MutableInterac 阅读全文
posted @ 2024-04-27 01:19 SharpCJ 阅读(1104) 评论(0) 推荐(0) 编辑
摘要:Jetpack Compose 中如何实现全面屏看问题本质,设置全面屏,是系统窗口的行为,与 View 和 Compose 有什么关系呢? 所以,原理和传统 View 视图是一样的,甚至 Api 都是一模一样的,不熟悉的可以看我之前的文章。传送门: Android 全面屏体验 那为什么还要写这篇文章呢?主要是在 Compose 中写法上的一些区别 阅读全文
posted @ 2024-04-27 00:17 SharpCJ 阅读(569) 评论(0) 推荐(0) 编辑
摘要:Jetpack Compose(6)——动画本文全面介绍 Jetpack Compose 中的动画。 阅读全文
posted @ 2024-04-26 22:14 SharpCJ 阅读(1725) 评论(0) 推荐(0) 编辑
摘要:Jetpack Compose(5)——生命周期与副作用函数目录一、 Composable 的生命周期二、 Composable 的副作用2.1 SideEffect2.2 DisposableEffect2.3 LaunchedEffect2.4 rememberCoroutineScope2.5 rememberUpdatedState2.6 deriv 阅读全文
posted @ 2024-04-04 00:08 SharpCJ 阅读(1616) 评论(1) 推荐(1) 编辑
摘要:Jetpack Compose(4)——重组目录一、状态变化1.1 状态变化是什么1.2 mutableStateListOf 和 mutableStateMapOf二、重组的特性2.1 Composable 重组是智能的2.2 Composable 会以任意顺序执行2.3 Composable 会并发执行2.4 Composable 会反复 阅读全文
posted @ 2024-04-03 22:55 SharpCJ 阅读(1025) 评论(2) 推荐(0) 编辑
摘要:Jetpack Compose(3) —— 状态管理本文主要讲解了 Compose 中状态的概念。最后做个小结, - Compose UI 依赖状态变化,触发重组,驱动界面更新。 - 使用 remember 和 rememberSaveable 进行状态持久化。remember 保证在 recompose 过程中状态稳定,rememberSaveable 保证 Activity 自动销毁重建过程中状态稳定。 - 状态上提,尽可能将 Stateful 组件转换为 Stateless 组件。 - 视情况使用 Stateful、StateHoler、ViewModel 管理状态。 - 将 LiveData、RxJava、Flow 数据流转换为 State。 阅读全文
posted @ 2024-03-13 00:12 SharpCJ 阅读(1629) 评论(1) 推荐(0) 编辑
摘要:kotlinx.serialization —— 一个可以取代 Gson 的高效的 Json 解析框架 阅读全文
posted @ 2023-12-11 22:40 SharpCJ 阅读(1927) 评论(0) 推荐(0) 编辑
摘要:Kotlin 基础入门如果你会 Java, 那么来看一看 Kotlin , 基础入门。 如果你不理解 Kotlin 的lambda 表达式,那么来看一看,帮助你真正理解函数类型,lambda 表达式。 阅读全文
posted @ 2023-09-05 23:39 SharpCJ 阅读(749) 评论(0) 推荐(0) 编辑
摘要:Kotlin return@xxx 的坑避坑指南!!! 阅读全文
posted @ 2023-08-13 00:06 SharpCJ 阅读(750) 评论(0) 推荐(0) 编辑
摘要:某天将项目 kotlin 版本升级到了 1.8.0 ,然后编译报错了, Duplicate class kotlin-stblib vs kotlin-stdlib-jdk7/8 然后开始寻求解决方案... Duplicate class kotlin-stblib vs kotlin-stdlib 阅读全文
posted @ 2023-05-14 10:53 SharpCJ 阅读(967) 评论(0) 推荐(0) 编辑
摘要:一、内联拓展函数 let let 扩展函数的实际上是一个作用域函数,当你需要去定义一个变量在一个特定的作用域范围内,let函数的是一个不错的选择;let函数另一个作用就是可以避免写一些判断null的操作。 1.1 let 函数的使用的一般结构 object.let { it.todo() //在函数 阅读全文
posted @ 2022-04-13 20:57 SharpCJ 阅读(2735) 评论(0) 推荐(2) 编辑
摘要:本文是 Kotlin 协程系列最后一篇文章,讲述了在 Android 中使用协程的一些奇技淫巧。大多数类容出自 google IO 大会 阅读全文
posted @ 2022-01-15 00:40 SharpCJ 阅读(5289) 评论(0) 推荐(1) 编辑
摘要:本文介绍了 Flow 和 Channel 之间的相互转换、冷流转换为热流、以及将回调式 Api 转换为数据流式的 Api 阅读全文
posted @ 2022-01-15 00:34 SharpCJ 阅读(4951) 评论(0) 推荐(0) 编辑
摘要:本文详细介绍了协程中数据流 Flow 的使用。结合实例,讲解了 Flow 的各种操作符,介绍了 热流 StateFlow 和 SharedFlow 的相关知识。 阅读全文
posted @ 2022-01-15 00:32 SharpCJ 阅读(6289) 评论(1) 推荐(3) 编辑
摘要:本文是 Kotlin 协程系列文章第二篇,介绍了协程中的通道,Channel 的概念 ,用法,以及 SendChannel、ReceiveChannel、 BroadcastChannel 等概念。阅读本文,全面了解协程中的 Channel 阅读全文
posted @ 2022-01-15 00:14 SharpCJ 阅读(3746) 评论(0) 推荐(0) 编辑
摘要:本文是 Kotlin 协程系列文章第一篇,全面介绍了 Kotlin 协程的概念、使用方式、作用域、上下文、并发以及挂起等,并分析讲解了协程数据同步方式。 阅读全文
posted @ 2022-01-15 00:05 SharpCJ 阅读(8434) 评论(0) 推荐(3) 编辑
摘要:Kotlin 函数 与 lambda 表达式Kotlin 函数和 lambda 表达式傻傻分不清?这篇文章带你彻底弄清楚。 阅读全文
posted @ 2022-01-14 23:55 SharpCJ 阅读(330) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示