SwipeRefreshLayout和TextView滑动冲突的暴力解决方法

SwipeRefreshLayout和TextView滑动冲突

如果SwipeRefreshLayout中存在TextView,并且TextView被设置为可以上下滑动,那么在下滑TextView的时候会与SwipeRefreshLayout冲突,系统优先判断为SwipeRefreshLayout
网上查到的解决方案是,给TextView设置onTouchListener,在MotionEvent.ACTION_MOVE的时候禁止其parent获取滑动状态,实际用下来发现时灵时不灵的,思来想去想出了一个最简单暴力的解决方法:在点击TextView的时候禁用下拉刷新功能

kotlin 复制代码
mSwipe = findViewById(R.id.swipeRefresh)
tvText.setOnTouchListener { _, event ->
       when (event.action) {
           MotionEvent.ACTION_DOWN -> mSwipe.isEnabled = false
           MotionEvent.ACTION_UP -> mSwipe.isEnabled = true
       }
       return@setOnTouchListener false
}
相关推荐
Yang-Never4 小时前
Kotlin -> 普通Lambda vs 挂起Lambda
android·开发语言·kotlin·android studio
张可19 小时前
在 Voyager 中使用 SharedElement 共享元素动画
android·前端·kotlin
Yang-Never19 小时前
设计模式 -> 策略模式(Strategy Pattern)
android·开发语言·设计模式·kotlin·android studio·策略模式
IH_LZH2 天前
kotlin小记(1)
android·java·前端·kotlin
Kapaseker2 天前
如果你还不懂 Kotlin Flow,这里有一万字
android·kotlin
zerofancy2 天前
在Compose Desktop实现简单消息通知
kotlin·app
alexhilton3 天前
学会说不!让你彻底学会Kotlin Flow的取消机制
android·kotlin·android jetpack
Monkey-旭4 天前
Android Bitmap 完全指南:从基础到高级优化
android·java·人工智能·计算机视觉·kotlin·位图·bitmap
Monkey-旭5 天前
深入理解 Kotlin Flow:异步数据流处理的艺术
android·开发语言·kotlin·响应式编程·flow
程序员江同学6 天前
Kotlin 技术月报 | 2025 年 7 月
android·kotlin