怎么在Android中实现单双击功能

  介绍

这篇文章将为大家详细讲解有关怎么在Android中实现单双击功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

双击实现:记录第一次点击时间,在设定时间内再次点击,则返回监听事件,否则不做处理,应用双击退出亦是同样的实现逻辑。

/* *   ,*双击实现   ,*   ,* @author 几圈年轮   ,*/public  abstract  class  BaseDoubleClickListener  implements  View.OnClickListener  {      private 才能static  final  long  DOUBLE_TIME =, 500;   private 才能static  long  lastClickTime =, 0;      @Override才能   public 才能;void  onClick (View  v), {   ,,,long  currentTimeMillis =, System.currentTimeMillis ();   ,,,if  (currentTimeMillis 作用;lastClickTime  & lt;, DOUBLE_TIME), {   ,,,,,onDoubleClick (v);   ,,,}   ,,,lastClickTime =, currentTimeMillis;   ,,}      ,/* *   ,,*,双击事件   ,,*   ,,*,@param  v 视图   ,,*/public 才能abstract  void  onDoubleClick (View  v);      }

调用方式:

view.setOnClickListener (new  BaseDoubleClickListener (), {   @Override才能   public 才能;void  onDoubleClick (View  v), {   ,,,,   ,,}   });

应用双击退出:

private  long  onBackPressedTime;   @Override   public  void  onBackPressed (), {   long 才能;timeSpan =, System.currentTimeMillis(),安康;onBackPressedTime;   时间=onBackPressedTime 才能;System.currentTimeMillis ();   if 才能;(timeSpan 祝辞,2000),{   ,,,Toast.makeText (,, getresource () .getString (R.string.exit), Toast.LENGTH_SHORT),告诉();   ,,},{else    ,,,super.onBackPressed ();   ,,}   }

单击及双击实现:使用处理器进行延时消息发送,通过计数获取点击次数,若设定时间内点击两次则返回双击事件,单次,则返回单击事件。

/* *   ,*单击,双击实现   ,*   ,* @author 几圈年轮   ,*/public  abstract  class  BaseClickListener  implements  View.OnClickListener  {      private 才能static  final  int  TIMEOUT =, 400;      private 才能int  clickCount =, 0;   private 才能Handler 处理程序;      protected 才能;BaseClickListener (), {   ,,,handler =, new 处理程序();   ,,}      @Override才能   public 才能;void  onClick (View  v), {   ,,,clickCount + +;   ,,,handler.postDelayed (new  Runnable (), {   ,,,,@Override   ,,,,,public  void 运行(),{   ,,,,,,,if  (==clickCount  1), {   ,,,,,,,,,onSingleClick (v);   ,,,,,,,},else  if  (==clickCount  2), {   ,,,,,,,,,onDoubleClick (v);   ,,,,,,,}   ,,,,,,,handler.removeCallbacksAndMessages(空);   ,,,,,,,clickCount =, 0;   ,,,,,}   ,,,},,超时);   ,,}      ,/* *   ,,*,单击实现   ,,*   ,,*,@param  v 视图   ,,*/public 才能abstract  void  onSingleClick (View  v);      ,/* *   ,,*,双击实现   ,,*   ,,*,@param  v 视图   ,,*/public 才能abstract  void  onDoubleClick (View  v);      }

调用方式:

view.setOnClickListener (new  BaseClickListener (), {   ,,   @Override才能   public 才能;void  onSingleClick (View  v), {      ,,}      @Override才能   public 才能;void  onDoubleClick (View  v), {   ,,   ,,}   }); Android是什么

Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国谷歌公司和开放手机联盟领导及开发。

关于怎么在Android中实现单双击功能就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

怎么在Android中实现单双击功能