Android EditText OnTouchListener事件重复

简介:

今天在做数字键盘输入法的时候,监听EditText的OnTouchListener事件,然后弹出输入法,发现事件里面的方法居然执行了两次。

代码如下:

 

 
  1. Java代码  
  2.       
  3. edit.setOnTouchListener(new OnTouchListener() {        
  4.         
  5.             @Override        
  6.             public boolean onTouch(View v, MotionEvent event) {        
  7.                 NumberInputApp.setEdit(edit);        
  8.                 Intent intent = new Intent();        
  9.                 intent.setClass(NumberKeyBoardActivity.this, NumberInputActivity.class);        
  10.                 startActivity(intent);        
  11.                 return false;        
  12.             }        
  13.         });    

经过同事的提示,发现有可能是EditText的事件太过灵敏了,在MotionEvent.ACTION_DOWN和MotionEvent.ACTION_UP各执行了一次,于是把代码改成如下即可:

 

 
  1. Java代码  
  2.       
  3. edit.setOnTouchListener(new OnTouchListener() {        
  4.         
  5.             @Override        
  6.             public boolean onTouch(View v, MotionEvent event) {        
  7.                 /**加这个判断,防止该事件被执行两次*/        
  8.                 if (event.getAction() == MotionEvent.ACTION_DOWN) {        
  9.                     NumberInputApp.setEdit(edit);        
  10.                     Intent intent = new Intent();        
  11.                     intent.setClass(NumberKeyBoardActivity.this, NumberInputActivity.class);        
  12.                     startActivity(intent);        
  13.                 }        
  14.                 return false;        
  15.             }        
  16.         });    

 



     本文转自06peng 51CTO博客,原文链接:http://blog.51cto.com/06peng/963236,如需转载请自行联系原作者




相关文章
|
6月前
|
XML Java Android开发
Android Studio App开发之捕获屏幕的变更事件实战(包括竖屏与横屏切换,回到桌面与切换到任务列表)
Android Studio App开发之捕获屏幕的变更事件实战(包括竖屏与横屏切换,回到桌面与切换到任务列表)
200 0
|
30天前
|
Android开发
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
|
1月前
|
Android开发
Android面试高频知识点(1) 图解 Android 事件分发机制
Android面试高频知识点(1) 图解 Android 事件分发机制
39 1
|
1月前
|
XML 前端开发 Android开发
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
Android面试高频知识点(1) 图解Android事件分发机制
|
1月前
|
Android开发
Android 事件分发机制详细解读
Android 事件分发机制详细解读
40 4
|
3月前
|
图形学 Android开发
小功能⭐️Unity调用Android常用事件
小功能⭐️Unity调用Android常用事件
|
3月前
|
Android开发
Android面试高频知识点(1) 图解 Android 事件分发机制
在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义控件,同时事件分发机制也是Android面试必问考点之一,如果你能把下面的一些事件分发图当场画出来肯定加分不少。废话不多说,总结一句:事件分发机制很重要。
199 9
|
3月前
|
开发工具 Android开发
Android项目架构设计问题之组件A通知组件B某个事件的发生如何解决
Android项目架构设计问题之组件A通知组件B某个事件的发生如何解决
41 0
|
5月前
|
XML Android开发 数据格式
37. 【Android教程】基于监听的事件处理机制
37. 【Android教程】基于监听的事件处理机制
81 2
|
5月前
|
XML Java Android开发
14. 【Android教程】文本输入框 EditText
14. 【Android教程】文本输入框 EditText
626 2