Unity在移动端下禁用多点触控的方法

这篇具有很好参考价值的文章主要介绍了Unity在移动端下禁用多点触控的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在用Unity做微信小游戏的时候遇到了需要禁用多点触控的需求。
起初在网上查到的方法是,但是并不起作用。

Input.multiTouchEnabled = false; //-- 禁止多点触摸

原因是这个API是给input输入事件用的,当使用Input.GetTouch之类的方法控制触摸时才有用。

而如果使用的是EventSytem来控制触摸话就需要另外的方法。
下面的代码实现了 只允许单指触发OnDrag()的效果。当多根手指放在物体上时,会以最后放在屏幕上的那根手指为准,其他的手指不触发OnDrag()。文章来源地址https://www.toymoban.com/news/detail-512015.html

using UnityEngine;
using UnityEngine.EventSystems;
 
public class InputSingleFinger : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
    private int eventPointerId;
 
    public void OnBeginDrag( PointerEventData eventData )
    {
        eventPointerId = eventData.pointerId;
    }
 
    public void OnDrag( PointerEventData eventData )
    {
        if( eventData.pointerId != eventPointerId )
        {
            return;
        }
    }
 
    public void OnEndDrag( PointerEventData eventData )
    {
        if( eventData.pointerId != eventPointerId )
        {
            return;
        }
    }
}

到了这里,关于Unity在移动端下禁用多点触控的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt实现桌面画线、标记,流畅绘制,支持鼠标和多点触控绘制

    经常会在网上直播讲课或者点评中看到可以在课件上或者桌面上进行画线标记划重点,其实实现并不难,原理就是在桌面上盖一个透明图层,然后根据鼠标点绘制曲线。 今天分享如何通过Qt的QGraphics体系来实现这个功能,以前的文章已经介绍过使用Qt进行曲线绘制及相关原理

    2024年02月15日
    浏览(35)
  • Moonlight-Android修改版(本地鼠标+原生多点触控+键盘快捷键支持+触摸板键盘支持)

    我是用的小新padpro12.7串流的,不知道是不是设备原因,串流用平板外接的鼠标操作非常迟缓,在网上找了很久没有解决的办法(有人说用usb映射可以但是似乎必须是有线鼠标,这样出门太麻烦了)。后面在酷安找到了一位老哥的改版小米平板 HyperOS触控键盘逻辑分析优化以及

    2024年04月09日
    浏览(73)
  • Unity 创建/删除/启用/禁用组件的惯用方法

    1、创建组件: Unity 创建组件可以通过编辑器中的\\\"Add Component\\\"创建,或者代码动态创建:GameObject.AddComponentT(),如: 2、删除组件: Unity 删除组件可以通过编辑器中组件的“Remove Component”删除,或者代码动态,使用Destroy()或DestroyImmediate()方法,如: 3、启用/禁用组件: 对于

    2024年02月04日
    浏览(28)
  • 如何彻底禁用笔记本电脑的键盘或者禁用笔记本的触控屏,及禁用后如何恢复,解决笔记本电脑蓝屏信息显示:“systern thread exception no handled” 失败操作“etd.sys

    目录 测试键盘是否失灵的软件 针对场景 网上教的方法——卸载掉PC/AT 增强型 PS/2 键盘(101/102 键) 具体做法 我推荐的做法——禁用笔记本的PC/AT 增强型 PS/2 键盘(101/102 键) 禁用笔记本键盘(PC/AT 增强型 PS/2 键盘(101/102 键)方法 禁用了笔记本键盘后虚拟键盘调用方式 恢复笔记本

    2024年02月09日
    浏览(46)
  • unity 物体移动方法

        在Unity3D中,有多种方式可以改变物体的坐标,实现移动的目的,其本质是每帧修改物体的position。     Transform 组件用于描述物体在空间中的状态,它包括 位置(position), 旋转(rotation)和 缩放(scale)。 其实所有的移动都会导致position的改变,这里所说的通过Transform组件来移

    2024年02月12日
    浏览(29)
  • 快讯 | 东舟技术参与编制的《移动终端人-系统交互工效学 触控界面感知流畅性》国家标准正式发布!

    近日,根据中华人民共和国国家标准公告[2023年第1号],由华为技术有限公司 、中国标准化研究院 、北京东舟技术股份有限公司等单位联合编制的GB/T 42396-2023   移动终端人-系统交互工效学 触控界面感知流畅性 国家标准正式发布。 这项国家标准的发布标志着适用于所有智能

    2024年02月05日
    浏览(44)
  • 【Unity入门】物体5种移动方法

    利用修改Transform组件的position的两种常用方法。 使用Translate()函数 直接指定新的位置 将上述两种方法在 void Update()实现每一帧物体向x方向移动1.5个单位,具体代码如下: 注意:此处1.5为啥要写1.5f,根据C#的语法规定,直接写1.5会被认为double类型的数,而这里需要flaot类

    2024年02月02日
    浏览(29)
  • 【Unity功能】鼠标移动触发事件方法

     方法一:方法触发 注意:UGUI不能使用该方法 方法二:Event Trigger 注意:需要场景中包含EventSystem(在添加trigger组件后自动添加);UGUI可以使用 方法三:

    2024年01月25日
    浏览(26)
  • unity控制移动的3种方法

    利用修改Transform组件的position的两种常用方法。 1.使用Translate()函数。 2.直接指定新的位置 1。利用AddForce()对物体施加力改变位置 2.直接修改物体的速度 以键盘的W、A、S、D为例 参考unity的输入管理器的横轴输入与纵轴输入

    2024年02月07日
    浏览(23)
  • Unity 触控插件LeanTouch/LeanTouch+教程

    LeanTouch 和 LeanTouch+ 是针对移动触摸设备的输入解决方案。它们提供了一套简单易用的 API,用于处理移动设备上的触摸输入,并且支持各种手势,如拖动、缩放、旋转等。 主要特点和功能: 支持多平台: LeanTouch 和 LeanTouch+ 可以在 iOS、Android、Windows 和 macOS 等各种平台上使用

    2024年04月14日
    浏览(17)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包