Android 如何解决自定义View的事件冲突

本文介绍了在Android开发中遇到自定义View滑动冲突的处理思路,包括内外滑动方向不一致、一致以及多层滑动嵌套的情况。通过外部拦截法和内部拦截法,解析了解决滑动冲突的具体实现,提供了代码示例。
摘要由CSDN通过智能技术生成

在项目里经常会有一些需求 是我们原生控件做不出的效果,所以只能我们自己去绘制,但同时自定义view,就不会自己去化解一些冲突,所以这个时候需要我们做一些代码防范。

1.滑动冲突:一下是解决滑动冲突的几点思路:

就简单举个例子 :场景如下

拿一个电商APP为例,最外一层是一个ScrollView,包裹着recycleView ,是一个商品列表,下面是一个WebView,(需求流程是当recycleView滑到底部时候才全体滑动),往往大家都会有这么一个问题,就是滑到中间或者下方,就出现互动冲突整体跟着滑动,recyclerView还没有滑动完毕,就跟着一起滑动了。

而滑动场景往往是一下三种:

 

1、外部滑动和内部滑动方向不一致

       对于图一场景,平时工作中最常见的使用大概是外层为PageView,内层为一个Fragment+ListView/RecyclerView了。当然控件PageView和RecyclerView对事件冲突做了处理的,所以平时使用这两个控件的时候不会感受到滑动冲突的存在。如果是ScrollView+GridView等这类组合,就需要解决冲突了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值