首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Android 应用开发】多点触控 ( 多点触控事件 | PointerId | PointerIndex | 坐标获取 | 触摸点个数 )

触摸点个数获取 ( getPointerCount ) VI . 触摸点坐标获取 VII . 多点触控 示例代码 ( 参考 ) I . 多点触控事件 ---- 1 ....获取多点触控事件 : 调用 MotionEvent 对象的 getActionMasked() 可以获取多点触控事件 , 即上面的 5 种触摸事件 ; 3 ....获取并处理多点触控事件代码示例 : ① 获取多点触控事件 : //获取当前的多点触控触摸事件 int actionMasked = event.getActionMasked(); ② 处理多点触控事件...多点触控事件 : 多点触控事件 Action 由 pointerIndex 和 动作码 进行或运算 合成 调用 event.getActionMasked...获取 触摸事件 相关属性 //获取当前的多点触控触摸事件 int actionMasked = event.getActionMasked(); //

1.3K20

Android触摸事件_wpf触摸屏点击事件

触屏事件 三类简单触屏事件: 单击事件:OnClickListener 长按事件:OnLongClickListener 触摸事件:OnTouchListener 这些方法都是View类的,所以像TextView...View view)即可 长按事件 长按事件有单击事件的前四种方法,但是没有最后一种方法。...触摸事件 触摸事件有onTouch方法有参数MotionEvent event,通过对象event方法getX()和getY()可以获取触摸出横纵坐标。...触摸事件第一下必须点在组件上,之后手指可以滑向组件之外,并且可以得到时时的坐标。 简单地说,为一个飞机加上监听之后,我们必须手指放在飞机上才可以拖动飞机。...对最上面的TextView加上触摸监听器,并显示坐标。 xml代码: <?xml version="1.0" encoding="utf-8"?

2.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    免费升级你的触摸板支持win10多点触摸

    触摸这一简单的操作,无疑是人机交互中最伟大的进步之一。从点按、滑动到捏合、轻扫,触摸操作不仅简单直观,同时能够给予参与者良好的反馈。...作为多点触摸的先驱者,Apple甚至为 MacBook 也装上了硕大的触摸板。不过由于驱动的原因,无论大小如何,Windows 平台下的笔记本触摸板使用体验却一直不尽人意。...好在微软自 Windows 8 以来一直在优化移动设备的使用体验,在 Windows 10 中,我们只需一个驱动就能轻松将触摸板免费升级为精确式触摸板,从而开启 Windows 自带的触摸手势功能。...卸载完成后在官网下载对应的触摸板驱动,并且解压手动安装。解压完成后右键点击你的触摸板,选择“更新驱动程序”,并在随后选择“浏览我的计算机以查找驱动程序软件”。...相比于原厂驱动,精确式触摸板驱动在响应速度以及准确度上均有所提升,并且能够开启 Windows 10 的原生触摸设置。

    2.3K10

    touchesBegan 触摸事件

    一、概念介绍 1、在用户使用App过程中,会产生各种各样的事件,iOS中的事件可以分为3大类型: 1)触摸事件 2)加速计事件 3)远程操控事件 响应者对象UIResponder 在iOS...二、UIReponder类 UIResponder内部提供了一下方法来处理事件,父类是NSObject 1、触摸事件 1)手指按下事件 - (void)touchesBegan:(NSSet<UITouch...,单位是秒 @property(nonatomic,readonly) NSTimeInterval timestamp; 5)获取当前触摸事件所处的状态 触摸事件在屏幕上有一个周期,即触摸开始、触摸点移动...类 UIEvent:成为事件对象,记录产生的时刻和类型,事件对象中包含于当前多点触摸序列相对应的所有触摸对象,还可以提供与特定视图或窗口相关联的触摸对象。...@property(nonatomic,readonly) NSTimeInterval timestamp; 2、方法 1)获取触摸点的集合,可以判断多点触摸事 - (nullable NSSet

    82220

    WPF 从触摸消息转触摸事件

    在 WPF 程序可能因为一些坑让程序触摸失效,如果此时还可以收到系统的触摸消息,那么可以通过从触摸消息转触摸事件解决程序触摸失效但不适合所有触摸失效程序 在 WPF 的触摸代码写的不是很清真,特别是触摸事件可能出现一些坑...因为在希沃的设备上主要是触摸屏幕,用户不会有鼠标,如果出现了初始化的过程刚好就是 USB 准备好,那么这个程序将收不到任何触摸事件 在程序启动的时候,可以通过获得触摸精度和触摸点判断当前是否存在触摸设备...Window 的 SourceInitialized 事件触发之后才能调用 创建 MessageTouchDevice 继承 TouchDevice 从 WPF 模拟触摸设备 可以知道这个类可以用来模拟触摸...inputs, NativeMethods.TouchInputSize); 如果可以拿到输入,那么 GetTouchInputInfo 将会返回 true 通过这个判断 然后遍历 inputs 输入进行转换事件...,从 WPF 模拟触摸设备 找到通过封装的 Down 等方法可以转换为事件,请看代码 在 GetTouchInputInfo 方法拿到的输入的类包含了当前触摸的屏幕坐标和触摸的面积,拿到的数据其实是原有是的百分之一也就是需要除以

    1.2K20

    WPF 触摸事件

    本文从代码底层告诉大家,在触摸屏幕之后是如何拿到触摸点并且转换为事件 在 WPF 界面框架核心就是交互和渲染,触摸是交互的一部分。...从触摸线程转换到主线程,然后从主线程封装为路由事件的模块请看下面 ? 路由事件需要封装触摸消息并且找到命中的元素 ?...} 通过这个方法可以知道触摸的设备的 id 和触摸的数据,触摸事件 在拿到触摸信息之后,会调用 FireEvent 转换事件,在拿到的信息包括了表示是什么事件,因为触摸事件是传入一个数值,需要通过这个数值转换为对应的事件...这个技术是用来解决多点触摸,如果用户有多个点触摸,就需要使用 stylusPointerId 来拿到这个点之前的做法 先告诉大家调用的顺序,不然大家看到下面忘记了点就不知道我在说的是什么了,本文图片画的实线表示方法在方法内调用了下一个方法...在触摸的过程会调用 StylusPlugIn 是 WPF 提供的快速拿到触摸的方法,如果是从路由事件,需要等待主线程和其他的代码,这样无法做到比较快拿到触摸

    1.3K20

    CreatorPrimer|触摸事件冒泡

    从一次微信聊天开始 ---- 前两天正在愁公众号写点什么,打开微信看到uikiller用户「悦雨」遇到了一个问题: 地图拖动与子节点触摸事件产生冲突,表现为:在子节点上拖动,但地图不动,怎么办?...触摸事件捕获!继续对话: ? 至此问题终于解决,下来的公众号内容也有了着落 ? !..._touchMoved=true 再看1006行onTouchEnd函数,在这里判断了touchMoved这个变量,停止TOUCH_END事件的传播,这样子节点的触摸事件就不会被触发了 993行onTouchMoved...在CCScrollView.js源码中搜“TOUCH_END”关键字,找到TOUCH事件注册的代码: ? 看看这里有与自己平时注册TOUCH事件有什么不同?..., //触摸事件类型 this.

    1.3K30

    Android触摸事件机制

    看到这里,即使不是作为移动端码农的你也应该知道触摸事件对手机(经典键盘机除外)的重要性了。 什么是触摸事件 顾名思义,就是触摸手机屏幕后产生的事件。...这个过程一般会产生如下几个事件: 点击(Down)事件 移动(Move)事件 松手(Up)事件 Android为我们封装好了一个触摸事件类MotionEvent,上述的三个过程分别对应着MotionEvent...所谓触摸事件的分发,实际上可以理解为MotionEvent事件的分发过程,即当一个MotionEvent产生了之后,系统需要把这个事件传递给一个具体的View,而这个传递的过程就是分发过程。...分析可知: 触摸事件ev类收到点击的ACTION,会回调onUserInteraction方法,一般项目中我们把一些需要用户开始触摸时就需要执行的任务代码放在这里。...从中我们看出触摸事件ev会按照子View加入ViewGroup先后顺序相反的顺序,依次有机会去消费此触摸事件ev,即最后加入的最先有机会消费此触摸事件(消费的前提是,触摸点在这个子View的视图范围之内

    72730

    为精灵添加触摸事件

    比如:精灵是一块石头,触摸石头后,让石头从A点移动到B点。   由于精灵(CCSprite)类没有点击、触摸事件,所以要用其他的方法为精灵添加触摸事件。   ...返回false表示忽略 //也可在此方法中判断是否要为某些其它元素适时忽略触摸事件 bool HelloWorld::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent...)事件了,但是,我们如果在场景中存在其他的比如菜单、按钮之类的元素,会发现这些元素触摸(点击)无响应了。...没错,我们只判断了当触摸范围在指定精灵上时,才触发动作。   ...->addTargetedDelegate(this,-120,true);   其中第二个参数为响应等级,数越小,等级越高,所以我们只要为其它的元素指定比-120小的整数,其它元素就会优先响应自身的触摸事件

    57630

    触摸事件 touchstart、touchmove、touchend

    目录 触摸事件概述 触摸事件编码 触摸手指个数分析 触摸目标 DOM 元素分析 触摸位置分析 ---- 触摸事件概述 1、HTML5 中, PC 端基于鼠标的界面互动主要是单击, 移动端界面交互方式主要是触摸...2、移动端浏览器触摸事件事件名称 描述 是否包含 touches 数组 touchstart 触摸开始,多点触控,后面的手指同样会触发 是 touchmove 接触点改变,滑动时 是 touchend...触摸结束,手指离开屏幕时 是 touchcancel 触摸被取消,当系统停止跟踪触摸的时候触发 否 3、每个触摸事件都包括了三个触摸列表,每个列表里包含了对应的一系列触摸点(用来实现多点触控):...3)changedTouches:涉及当前事件手指的列表。 4、每个 Touch 对象包含的属性如下: clientX:触摸目标在视口中的x坐标。...screenX:触摸目标在屏幕中的x坐标。 screenY:触摸目标在屏幕中的y坐标。 target:触摸的DOM节点目标。 触摸事件编码 <!

    1.7K20

    Android触摸事件传递机制

    前言:在Android开发中,经常会遇到触摸事件冲突,比如ViewPager的轮播图跟Fragment的划动事件冲突,或者轮播图跟下拉事件冲突,自定义view的事件处理等,本文章将会详细介绍Activity...、View、ViewGroup三者的触摸事件传递机制,传递包括三个阶段:分发、拦截、消费。...一.触摸事件的类型 触摸事件对应的是 MotionEvent 类,事件类型主要有三种: ACTION_DOWN:用户按下操作,表示一次触摸事件的开始。...ACTION_UP:用户手指离开屏幕,表示一次触摸事件的 注 :如果用户仅仅的是点击而已,则只会执行到 ACTION_DOWN 和 ACTION_UP 两个事件,不会执行到 ACTION_MOVE 事件...二.触摸事件的传递阶段 1.分发(Dispatch) 在Android系统中所有的触摸事件都是由 dispatchTouchEvent 方法进行分发的。

    1.3K10

    Android触摸事件传递(上)

    App来说至关重要,人机交互从我们手指的各种触摸手势开始,手机屏幕检测到我们的触摸事件,手机操作系统会将这些触摸事件通过回调框架提供的定义好的接口,让我们App可以接收到这些触摸事件,从而开展我们自己的业务逻辑...这里分三步,第一步,如果是触摸开始类型ACTION_DOWN事件,会回调onUserInteraction()方法,所以在项目中可以考虑将一些需要用户开始触摸时就执行的代码放到此方法中;第二步,将触摸事件...所以如果所有布局的都没有消费此触摸事件ev,就会执行第三步 ,调用Activity的onTouchEvent()方法,否则此触摸事件ev在App层传递结束。    ...都不会再收到点击的触摸事件了。...这也验证了我们关于View触摸事件传递的第二部分,触摸事件ev优先被onTouchListener消费,然后再让传递给onTouchEvent消费。

    1.1K30

    Android触摸事件传递(下)

    ViewGroup触摸事件的传递,我们要先了解onInterceptTouchEvent()方法,这个方法默认返回false,表示ViewGroup是否拦截触摸事件,即如果返回true,拦截触摸事件,则不会将任何触摸事件...很明显,我们的按钮的触摸事件和它的父容器的触摸事件,都触发了,这是因为,我们EventBtn的onTouchListener方法和onTouchEvent方法都返回false,没有消费触摸事件事件会向上继续传递...触摸事件ev会按照子View加入ViewGroup先后顺序相反的顺序,依次有机会去消费此触摸事件ev,即最后加入的最先有机会消费此触摸事件,当然,它消费的前提是,触摸点的坐标在这个子View的frame...我们也很好读懂,如果事件是ACTION_UP或者ACTION_CANCEL,表示触摸结束,但是还有第三种是 如果触摸事件是ACTION_DOWN 并且result==false,同样停止嵌套的触摸事件传递...通过上面的知识,如果我们不希望响应触摸事件,可以给ACTION_DOWN触摸事件,返回false,或者如果我们希望提前结束一个触摸事件周期,可以给targetView 发送 ACTION_CANCEL事件

    1K10

    Android触摸事件_android设置按钮点击事件

    在Android系统中,手势的识别是通过 .OnGestureListener接口来实现的,利用,摸屏的Fling、Scroll等方法可以进行滑动或翻页效果的实现;触摸屏相关的事件,是通过onTouchListener...我们可以通过MotionEvent的getAction()方法来获取Touch事件的类型,包括 ACTION_DOWN, ACTION_MOVE, ACTION_UP, 和ACTION_CANCEL。...ACTION_DOWN是指按下触摸屏,ACTION_MOVE是指按下触摸屏后移动受力点,ACTION_UP则是指松开触摸屏; 当我们捕捉到Touch操作的时候,如何识别出用户的Gesture?...event); } @Override public boolean onTouch(View v, MotionEvent event) { // 根据触摸事件来得到手势的事件...return mGestureDetector.onTouchEvent(event); //返回一个手势的事件 } 最后根据手势的事件实现Gesture的相应抽象方法,最重要的是

    3.2K20

    【如果你要学JS XIV】—— 移动端常用事件-移动端touch触摸事件

    导绪移动端浏览器兼容性较好,不需要考虑JS的兼容性问题,可以放心的使用原生JS书写效果,但是移动端也有自己独特的地方。如触屏事件touch (也称触摸事件) , Android和IOS都有。...1.触摸事件触屏touch事件说明touchstart手指触摸到一个DOM元素时触发touchmove手指在一个DOM元素上滑动时触发touchend手指从一个DOM元素上移开时触发...('我继续摸'); }) // 手指触摸离开DOM事件 div.addEventListener('touchend', function () {...console.log('我摸够了'); }) 2.触屏事件TouchEvent是一类描述手指在触摸平面 (触摸屏、触摸板等)的状态变化的事件。...因为平时我们都是给元素注册触摸事件,所以常用targetTocuhes3.TouchEvent触摸事件对象touches 正在触摸屏幕的所有于指的列衣,targetTouches 正在触摸当前DOM元素的手指列表如果侦听的是一个

    54200

    让 linux 实现触摸多点触控与手势操作

    引言 macbook 最吸引人之处就在于他的触控板,三指、四指各式操作让日常的生活、办公无比便捷,而如今,各个 windows 笔记本厂商也纷纷支持多点触控,发挥出了触摸板的优势。...2. fusuma 开源软件 fusuma 实现了多点触控的自定义配置: https://github.com/iberianpig/fusuma。 fusuma 的安装并不复杂。 2.1....将当前用户加入到系统 input group 中 首先,要让系统能够识别到你的触摸板,而普通用户是不具备自定义输入的权限的,因此需要执行下面命令让你成为输入组的一员: sudo gpasswd -a $...开启触摸板消息通知 gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled 3. fusuma 的用法 3.1....后记 如果你需要支持更为复杂的手势操作,或者通过触摸板模拟键盘事件等,都可以通过安装 fusuma 的插件实现: sudo gem install fusuma-plugin-XXXXX 可以参考: https

    3K20
    领券