package com.itheima52.doubleclick; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Toast; /** * 模拟双击事件 */ public class MainActivity extends Activity { private long firstClickTime; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void onClick(View view) { if (firstClickTime > 0) {// 发现之前点击过一次 if (System.currentTimeMillis() - firstClickTime < 500) {// 判断两次点击是否小于500毫秒 Toast.makeText(this, "双击啦!", Toast.LENGTH_SHORT).show(); firstClickTime = 0;//重置时间, 重新开始 return; } } firstClickTime = System.currentTimeMillis(); } }
n次点击:
package com.itheima52.moreclick; import android.app.Activity; import android.os.Bundle; import android.os.SystemClock; import android.view.View; import android.widget.Toast; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } long[] mHits = new long[3];// 数组长度表示要点击的次数,3表示3次点击,4表示4次点击。数组初始化都为0 public void onClick(View view) {//源码 System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1);//原数组,原数组拷贝起始点,目标数组,目标数组拷贝起始点。 mHits[mHits.length - 1] = SystemClock.uptimeMillis();// 开机后开始计算的时间,每次放在最后一个, if ((mHits[mHits.length - 1] - mHits[0]) <= 500) {//最后一个和第一个相差500毫秒 Toast.makeText(this, "是男人!!!", Toast.LENGTH_SHORT).show(); } } }
本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5128782.html,如需转载请自行联系原作者