由scrollView的缩放,发现的关于2种触摸模式的问题

本文探讨了在ScrollView的缩放功能中遇到的一个问题,即为何在设置为单点触摸模式时,仍然能实现双指缩放效果。通过分析引擎的两种触摸模式——kccTouchModeOneByOne(单点模式)和kccTouchModeAllAtOnce(多点模式),揭示了在单点模式下,尽管点会依次触发回调,但在设备支持多点触控的情况下,不会阻止额外的手指触碰屏幕。这可能导致某些情况下,如多个手指同时操作界面元素时的潜在bug。建议开发者通过自定义layer并重写触摸状态函数进行测试验证。
摘要由CSDN通过智能技术生成

        在scrollView的缩放功能这个文章中,还有一个疑问没有解决,为什么明明用的是单点模式,却还是可以做双指缩放的效果。


        引擎里面提供 kccTouchModeOneByOne 和 kccTouchModeAllAtOnce 2种触摸模式,名字很直观,第一种是一个点一个点的处理,那么就是单点模式,第二种是所有点一起来,那么就是多点模式。

        但是其实之前有一点忽略了,那就是在单点模式下(设备开启多点支持),点只是会一个一个触发回调,并不会做阻断。也就是说,如果我现在有一个手指按着屏幕,用另外一个手指点屏幕,是会触发touchBegan回调的,如果我同时多点一起触摸屏幕,会收到N次回调。而不是像多点一样,收到一个回调,里面包含多个点。

        当设备不支持多点的时候,单点就会模式的点击就会做阻断。


        具体的测试,请自己实现一个layer,重载几种触摸状态函数查看。

        设备需要支持多点,ios需要添加代码,请自行百度。

        

        无责任猜想:

        这样的模式下,可能会产生这样的bug:

        1、界面上又很多个按钮,一个手指按住屏幕不放,另外个手指再次点击。

        2、2个手指同时点击一个按钮。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值