AIR Android:触摸事件和鼠标事件之间的区别

电脑杂谈  发布时间:2020-12-25 05:00:43  来源:网络整理

触摸事件和鼠标事件之间的区别

通过上一节中的示例,我们可以看到触摸事件与鼠标有很多相似之处。区别在于触摸事件可以是多点,而鼠标事件始终是单点。如果程序不需要使用多点触摸功能,而只需要传统的单点交互,那么使用鼠标事件就可以满足需求。

实际上,与鼠标事件相比,AIR运行时花费更多的资源来监视触摸事件(包括下一节中描述的手势动作)。在运行TouchEventEx程序时,如果手指在屏幕上移动得太快,则点的移动会明显延迟。

android gridview点击事件_android gridview 点击事件_android鼠标点击事件

为了更清楚地说明两个事件之间的区别,可以使用MouseEvent重写TouchEventEx程序。修改后的代码位于MouseEventEx项目中,主程序Main.as如下:

android gridview 点击事件_android鼠标点击事件_android gridview点击事件

  1. package  
  2. {  
  3.  import flash.display.Graphics;  
  4.  import flash.display.Sprite;  
  5.  import flash.events.MouseEvent;   
  6.    
  7.  public class Main extends AppBase  
  8.  {  
  9.  
  10. override protected function init():void  
  11. {  
  12. //改为MOUSE_DOWN和MOUSE_UP事件  
  13.  stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownHandler);  
  14.  stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUpHandler);  
  15. }  
  16.  
  17. /**  
  18.  * 创建一个Sprite,画圆  
  19.  */  
  20. private function createCircle():Sprite  
  21. {  
  22.  var box:Sprite = new Sprite();  
  23.  var g:Graphics = box.graphics;  
  24.  g.beginFill(0x808888);  
  25.  g.drawCircle(0, 0, 30);  
  26.  g.endFill();  
  27.  return box;  
  28. }  
  29.  
  30. private function onMouseDownHandler(e:MouseEvent):void  
  31. {   
  32.  //在触摸点处添加一个圆  
  33.  var box:Sprite = createCircle();  
  34.  addChild(box);  
  35.  //将元件移到触摸点对应的舞台坐标处  
  36.  box.x = e.stageX;  
  37.  box.y = e.stageY;  
  38.    
  39.  //开始拖拽元件  
  40.  box.startDrag();  
  41. }  
  42.    
  43. private function onMouseUpHandler(e:MouseEvent):void  
  44. {  
  45.  //结束拖拽  
  46.  e.target.stopDrag();  
  47. }  
  48.  }  
  49. } 

android gridview 点击事件_android鼠标点击事件_android gridview点击事件

我相信读者在阅读了这部分代码后会感到非常熟悉。在此处使用鼠标事件MOUSE_DOWN和MOUSE_UP以及startDrag和stopDrag,它们在Flash开发中很常见。

android鼠标点击事件_android gridview点击事件_android gridview 点击事件

在真实计算机上运行MouseEventEx,无论同时使用多少手指触摸屏幕,程序始终仅对鼠标事件做出一次响应。此外,拖动点时没有延迟感,这显然比TouchEventEx程序的运行效果更平滑。

android鼠标点击事件_android gridview点击事件_android gridview 点击事件

使用MouseEvent的另一个优点是,该代码可以与桌面系统兼容。在开发跨平台项目时,这一点尤其重要。例如,可以调试MouseEventEx程序,然后在桌面上运行或在模拟器上运行。

[编辑推荐]

AIR Android:使用运行程序AIR Android:在真实计算机上运行程序AIR Android:关于多点触摸AIR Android:使用TouchEvent类(1)AIR Android:使用TouchEvent类(2)


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-342994-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...