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
}
相关推荐
Fate_I_C8 小时前
空安全与类型系统
安全·kotlin
Lambert_lin08 小时前
Android grade9.0 之后 自定义apk 名称
android·kotlin
Kapaseker8 小时前
“点击显示全文” — Compose 实现
android·kotlin
zzb15809 小时前
Kotlin 密封类与延迟初始化学习笔记
笔记·学习·kotlin
朝星9 小时前
Android开发[3]:协程+Flow
android·kotlin
Fate_I_C10 小时前
Kotlin数据类equals和 == 会返回true
kotlin
Fate_I_C10 小时前
实战案例:用 Kotlin 重写一个 Java Android 工具类
android·java·kotlin
Fate_I_C10 小时前
Kotlin 特有语法糖
android·开发语言·kotlin
Fate_I_C10 小时前
Kotlin 为什么是 Android 开发的首选语言
android·开发语言·kotlin
常利兵10 小时前
Kotlin 助力 Android 启动“大提速”
android·开发语言·kotlin