Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别

5 篇文章 0 订阅
订阅专栏

1.MotionEvent.ACTION_UP

直接上图说明:

这里写图片描述
这里写图片描述
这里写图片描述


2.MotionEvent.ACTION_CANCEL

图片说明:
这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述
其他的MotionEvent以后用到再更新

总结:
MotionEvent.ACTION_UPACTION_CANCEL的区别 图片上可能不怎么清楚。这里再说一下,手指点击屏幕之后直接抬起触发的就是MotionEvent.ACTION_UP;手指点击屏幕之后反复摩擦再抬起触发的就是MotionEvent.ACTION_UP

小米手机出现OnTouch事件中MotionEvent.ACTION_UP不执行
好好学习,天天向上
03-21 2340
今天在做一个录音的功能,按下开始录音,放开结束录音。完美的实现了,还测试了一两台手机,打算攻下个功能点去做了的。结果,好死不死,用了我自己的小米note3的手机也测了下录音,结果????为什么明明放开了,还没有结束录音???还需要再次按下才能结束录音,当时那个心呐,痛的我。还特意去测试那找了小米5的手机来测,但是人家还是好好的,正常按下放开。一点毛病都没,那会心就更痛了。怎么只有我的手机才出现这个...
Android事件分发之ACTION_MOVE与ACTION_UP的传递机制
Sander Lee
04-23 7649
目录引言ACTION_DOWN与ACTION_UP的传递机制ACTION_CANCEL的作用FLAG_DISALLOW_INTERCEPT的作用 引言 关于Android事件分发机制网上相关的文章很多,多数都是一些较为基础并且重复的内容。本文将从源码带领大家探究一些事件分发机制的“细枝末节”。但是在此之前,还是简单重复一下基础内容。即事件分发的三个重要方法: 事件传递给当前view时,dispat...
androidMotionEvent.ACTION_CANCEL事件如何被触发?
热门推荐
afra lee
08-21 2万+
对于这个问题,android文档的说明很简短,想看明白很难。国外一网页说的还比较详细,写在这里分享给大家: 原文是这样的: You receive this when a parent takes possession of the motion, for example when the user has dragged enough across a list view or sc
android MotionEvent Action
在线笔记
10-08 883
MotionEvent.ACTION_DOWN:在第一个点被按下时触发 MotionEvent.ACTION_UP:当屏幕上唯一的点被放开时触发 MotionEvent.ACTION_POINTER_DOWN:当屏幕上已经有一个点被按住,此时再按下其他点时触发。 MotionEvent.ACTION_POINTER_UP:当屏幕上有多个点被按住
Android中处理view弹起(即MotionEvent.ACTION_UP)事件发生时触摸点是否在该view组件的范围内
ALittleShip
09-16 2220
我们在对Android程序进行操作时,经常会发生按错了一个按钮。在这种情况下,我们会在按下按钮的情况下移动手指到这个按钮的外面从而实现取消之前的按下操作,个人觉得这种方法的体验很好(而微信没有实现这个功能)。 通常,我们会对控件设置它的OnTouchListener来实现该控件的按下效果,而我们在按下移动出该控件实现取消该控件的功能也在这个监听器中实现。
Android中setOnTouchListener的MotionEvent.ACTION_UP突然不执行了
weixin_37999256的博客
06-19 2563
在项目中有一个触摸发送语音的功能,我使用了view的setOnTouchListener(),监听手指触摸的状态进行相应操作。 mHoldToTalk.setOnTouchListener((v, event) -> { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: ...
Android MotionEvent
zenmela2011的专栏
02-25 3230
1.MotionEvent Android将所有的输入事件都放在了 MotionEvent 中,MotionEvent 负责集中处理所有类型设备的输入事件,包括单点触控、手势、多点触控、触控笔、鼠标、键盘、操纵杆、游戏控制器等。 事件类型: MotionEvent的事件类型主要有: public static final int ACTION_DOWN = 0; public static final int ACTION_UP = 1; public static final int ACTION_MOV
Android MotionEvent事件分发介绍与流程总结(伪代码形式)
u013914309的博客
05-05 876
如果要一句话简单总结的话,就是: 找到一个按照规则“消耗”掉MotionEvent.ACTION_DOWN事件的View,默认情况下,后继会把整个事件流都交给它来处理。 #.总体概括 Android手机是可触屏的设备,其它Android设备一般也是可触屏的。 可触屏设备允许用户与屏幕进行一些触碰的互动,系统识别各式各样的触摸操作,然后做出复杂的功能反应。 本文一切都是针对Android手机来分析说明的。 用户手机触摸屏幕的那一瞬间,An...
package com.blog.demo11; import android.annotation.SuppressLint; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.ImageView; import androidx.annotation.Nullable; import com.blog.BaseActivity; import com.blog.R; import static android.view.MotionEvent.INVALID_POINTER_ID; /** * 可拖拽效果类。 */ public class ViewDragActivity extends BaseActivity { private ImageView backgroundImage; private ImageView image1; private ImageView image2; @SuppressLint("MissingInflatedId") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.drag_layout); backgroundImage = findViewById(R.id.background_image); image1 = findViewById(R.id.image1); image2 = findViewById(R.id.image2); // Set touch listeners for each image image1.setOnTouchListener(new MultiTouchListener()); image2.setOnTouchListener(new MultiTouchListener()); } private class MultiTouchListener implements View.OnTouchListener { private float lastTouchX, lastTouchY; private int activePointerId = INVALID_POINTER_ID; @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getActionMasked()) { case MotionEvent.ACTION_DOWN: { final int pointerIndex = event.getActionIndex(); final float x = event.getX(pointerIndex); final float y = event.getY(pointerIndex); lastTouchX = x; lastTouchY = y; activePointerId = event.getPointerId(pointerIndex); break; } case MotionEvent.ACTION_MOVE: { final int pointerIndex = event.findPointerIndex(activePointerId); final float x = event.getX(pointerIndex); final float y = event.getY(pointerIndex); final float dx = x - lastTouchX; final float dy = y - lastTouchY; v.setX(v.getX() + dx); v.setY(v.getY() + dy); lastTouchX = x; lastTouchY = y; break; } case MotionEvent.ACTION_UP: case MotionEvent.ACTION_CANCEL: { activePointerId = INVALID_POINTER_ID; break; } case MotionEvent.ACTION_POINTER_UP: { final int pointerIndex = event.getActionIndex(); final int pointerId = event.getPointerId(pointerIndex); if (pointerId == activePointerId) { final int newPointerIndex = pointerIndex == 0 ? 1 : 0; lastTouchX = event.getX(newPointerIndex); lastTouchY = event.getY(newPointerIndex); activePointerId = event.getPointerId(newPointerIndex); } break; } } return true; } } }
最新发布
06-04
这是一个实现了可拖拽效果的 Android Activity 类,其中包含了三个 ImageView,分别是背景图 backgroundImage 和两个可拖拽的图片 image1 和 image2。通过实现 View.OnTouchListener 接口,对每个 ImageView 设置...
Android MotionEventACTION_CANCEL
chuyouyinghe的专栏
05-28 712
前言 对于Android MotionEvent,我们平时大多关注的是ACTION_DOWN、ACTION_UP、ACTION_MOVE,本篇将重点分析ACTION_CANCEL 产生的原因及其滑动事件的处理。 通过本篇文章,你将了解到: 1、ACTION_CANCEL 产生的原因 2、手指离开当前View时事件处理 3、手指离开屏幕时事件处理 1、ACTION_CANCEL 产生的原因 从ViewGroup 入手分析 事件分发是从ViewGroup-->View,因此想要知道View是
(转载) 关于MotionEvent.ACTION_UP无法被响应的问题
北京林业大学 吴道权(C/C++)
04-01 1128
今天做了一个小测试,implements OnTouchListener,想监听触屏动作 @Override   public boolean onTouchEvent(MotionEvent event) {          // TODO Auto-generated method stub         switch (event.getAction()) {
MotionEvent.ACTION_CANCEL的解析
xueyoubangbang的博客
04-12 1495
对于事件分发中,我们重写 onTouchEvent的时候基本都知道 1 .MotionEvent.ACTION_DOWN:(对应手势按下的时候) 2.MotionEvent.ACTION_MOVE:(对应手势滑动的回调) 3MotionEvent.ACTION_UP:(对应手势抬起的回调) 基本我们都只处理这三个 我平常也处理这三个,只到今天遇到一个问题 我积分器的...
AndroidMotionEvent和事件处理
m0_56231540的博客
05-07 1961
转载:(3条消息) AndroidMotionEvent和事件处理_huaxun66的博客-CSDN博客_motionevent.action_move MotionEvent MotionEvent对象是与用户触摸相关的时间序列,该序列从用户首次触摸屏幕开始,经历手指在屏幕表面的任何移动,直到手指离开屏幕时结束。手指的初次触摸(ACTION_DOWN操作),滑动(ACTION_MOVE操作)和抬起(ACTION_UP)都会创建MotionEvent对象,每次触摸时候这三个操作是肯定发生的。移动过程中也
setOnTouchListener在小米手机中不走ACTION_UP而是走ACTION_CANCEL
weixin_30344995的博客
03-13 448
单点触控: MotionEvent.ACTION_DOWN:手指初次接触到屏幕时触发。 MotionEvent.ACTION_MOVE:手指在屏幕上滑动时触发,会多次触发。 MotionEvent.ACTION_UP:手指离开屏幕时触发。 MotionEvent.ACTION_CANCEL:事件被上层拦截时触发。 MotionEvent.ACTION_OUTSIDE:手指...
OnTouchListener()监听不到MotionEvent.ACTION_UP?
iblade的博客
01-29 4583
面试中被问到Android多点触控,不小心被触及到盲区,作为已开发三四年的老司机,那个心酸啊! 忙里偷闲特意写个Demo熟悉下事件分发和多点触控吧,搞了半天竟然只能监听到MotionEvent.ACTION_DOWN,其他一概监听不到。先上代码: private void test() { imageView.setOnTouchListener(new Listener(
MotionEvent.ACTION_UP无法被响应
csdnwr的博客
07-07 6568
关于MotionEvent.ACTION_UP无法被响应的问题    @Override  public boolean onTouchEvent(MotionEvent event) {   // TODO Auto-generated method stub   switch (event.getAction()) {   case MotionEvent.ACTION_DO
android检测按钮down up,AndroidStudio MotionEvent:在第二个视图上仅检测ACTION_UP,在第一个视图上启动ACTION_DOWN...
weixin_32953571的博客
05-27 275
我正在使用Android Studio .我搜索了解决方案但找不到类似的东西 .我想知道在不同的ImageView上启动DOWN操作时,哪个ImageView出现UP动作(最终能够将一个图像拖到另一个上,并通过获取拖动的图像的位置使其捕捉到相同的位置) .我的例子有两个带有id imageView(左)和imageView2(右)的ImageView . 在我的例子中,我还没有拖动任何东西,我只想...
Android 事件分发】MotionEvent.ACTION_DOWN 按下事件分发流程( Activity | ViewGroup | View )
让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 )
07-30 3465
二、Activity 的事件传递、 1、dispatchTouchEvent 方法事件传递机制、 2、onTouchEvent 方法事件传递机制、 三、ViewGroup 的事件传递、 1、dispatchTouchEvent 方法事件传递机制、 2、onInterceptTouchEvent 方法事件传递机制、 3、onTouchEvent 方法事件传递机制、 四、View 的事件传递、 1、dispatchTouchEvent 方法事件传递机制、 2、onTouchEvent 方法事件传递机制
写文章

热门文章

  • Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别 6149
  • 不用中间变量交换a和b的值 3606
  • java基于有序链表的优先级队列实现 3449
  • 求两个数的最大公因数,欧几里得算法 870
  • Android SharePreference详解 564

分类专栏

  • android 5篇
  • java 1篇
  • 数据结构与算法 4篇

最新评论

  • Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别

    eHackyd: 发现这文章完全乱写,cancel事件是在ViewGroup拦截时才会触发的,可参考https://blog.csdn.net/cufelsd/article/details/89471402,而且我跟着作者的说法验了下上下摩擦根本无cancel触发

  • Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别

    eHackyd: 是的,赶紧改下。 同时感觉博主写的有点片面了,就给了个示例,应该从代码层面分析下,总感觉示例有问题。

  • java基于有序链表的优先级队列实现

    E TS E: 在eclipse上面编写出错[code=java] [/code] PriorityQueue list = new PriorityQueue(5);(The constructor PriorityQueue(int) is undefined) 表情包

  • Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别

    hust_twj: 需要有父控件的吧?我试了下,直接一个TextView不会触发。

  • Android MotionEvent.ACTION_UP和ACTION_CANCEL的区别

    SEU_Calvin: 手指点击屏幕之后反复摩擦再抬起触发的就是MotionEvent.ACTION_CANCEL。 楼主笔误了

最新文章

  • java基于有序链表的优先级队列实现
  • Android BroadcastReceiver
  • 冒泡排序原理
2016年9篇

目录

目录

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家昭通市玻璃钢雕塑价钱太原南沙玻璃钢人物雕塑气球商场美陈装饰哪家靠谱南昌卡通玻璃钢雕塑价格湖北欧式玻璃钢雕塑订做价格玻璃钢卡通雕塑厂家直销幼儿园玻璃钢雕塑阜阳浮雕玻璃钢雕塑厂家青岛树箱玻璃钢雕塑加工玻璃钢花盆供货商玻璃钢人物雕塑制作哪家好仙桃人物玻璃钢雕塑价格安国玻璃钢人物雕塑福州玻璃钢名人雕塑制作湖南多彩玻璃钢雕塑多少钱花朵校园玻璃钢雕塑厂山西玻璃钢卡通雕塑重庆佛像玻璃钢雕塑价位长治广场玻璃钢雕塑设计大型玻璃钢雕塑摆件把人藏在玻璃钢雕塑里泰州玻璃钢仿铜雕塑批发辽宁玻璃钢鹿雕塑大型玻璃钢玩偶雕塑专业定制张家口人物玻璃钢雕塑厂家张家口玻璃钢海豚雕塑顺义区商场美陈图纸玻璃钢树脂悬空雕塑玻璃钢花盆哪里有卖的园林玻璃钢卡通雕塑销售厂香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化