如何重写onInterceptTouchEvent, 拦截水平滚动

flyonthemoon 2011-09-21 03:59:11
程序结构是这样的:外层ViewGroup负责水平滚动,内层ScrollView负责垂直滚动。我想实现的效果是:水平滚动优先于垂直滚动,某种方向滚动开始,另一种滚动就不会发生。如何重写ViewGroup的onInterceptTouchEvent让水平滚动被拦截而不传至子View?
...全文
260 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdy0725 2011-09-21
  • 打赏
  • 举报
回复
这就要看你的想要的效果了。
如果“水平滚动优先于垂直滚动”,那么你可以判断如果水平流动至端点,返回false,否则返回true.
flyonthemoon 2011-09-21
  • 打赏
  • 举报
回复
直接返回true,子View的点击事件就全部接收不到,而且也不会发生垂直滚动了
wdy0725 2011-09-21
  • 打赏
  • 举报
回复
返回true

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧