android RecyclerView禁止多点触控

是这样,原本有一个功能,是用RecyclerView实现的,点击每个item都会弹出一个PopupWindow。

好的,用正常的方法实现就好。(注意点就是各个popupwindow的位置)

然后有一天,发现多个手指同时点击,比方说用三个手指分别点击三个item,则会同时弹出三个PopupWindow,出现了重叠。不难想象出是什么样的效果,,,

怎么改呢?

第一反应,多点触控。肯定是跟这个有关。

1、禁止某个View的多点触控,直接在该view所在布局的根上加android:splitMotionEvents="false"。

试了,无效。

2、在该View所在页面(Activity/Fragment)的根布局添加android:splitMotionEvents="false"。

试了,无效。

3、给该View设置监听,去掉多点触控。有效。

weather_live_recycler_living_index?.addOnItemTouchListener(object : RecyclerView.OnItemTouchListener{
            override fun onTouchEvent(p0: RecyclerView, p1: MotionEvent) {
            }

            override fun onInterceptTouchEvent(p0: RecyclerView, p1: MotionEvent): Boolean {
                when(p1.action and MotionEvent.ACTION_MASK) {
               
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值