android连续单击事件实现的两种方案

来源:互联网 发布:美食拍照软件 编辑:程序博客网 时间:2024/06/03 17:09

方案一

  1. view.setOnClickListener(new View.OnClickListener() {  
  2.     @Override  
  3.     public void onClick(View v) {  
  4.             new ContinuousClick().start();  
  5.                 if (ContinuousClick.IsAlive >= 5) {  
  6.                     Log.e(TAG,"连续点击了5次");
  7.                 }  
  8.     }  
  9. });  
  10. static class ContinuousClick extends Thread {  
  11.         public static volatile int IsAlive = 0;  
  12.         @Override  
  13.         public void run() {  
  14.             IsAlive++;  
  15.             try {  
  16.                 Thread.sleep(3000);  
  17.             } catch (InterruptedException e) {  
  18.                 e.printStackTrace();  
  19.             }  
  20.             if (IsAlive > 0) {  
  21.                 IsAlive--;  
  22.             }  
  23.             super.run();  
  24.         }  
  25.     } 


方案二:转载:http://www.jianshu.com/p/c94948fe30a1


private static final String PACKAGE_NAME_LAUNCHER = "com.android.launcher3";private int mSecretNumber = 0;private static final long MIN_CLICK_INTERVAL = 600;private long mLastClickTime;// click logo button 10 times continuously to open com.android.launcher3findViewById(R.id.logo).setOnClickListener(new View.OnClickListener() {    @Override    public void onClick(View v) {        long currentClickTime = SystemClock.uptimeMillis();        long elapsedTime = currentClickTime - mLastClickTime;        mLastClickTime = currentClickTime;        if (elapsedTime < MIN_CLICK_INTERVAL) {            ++mSecretNumber;            if (9 == mSecretNumber) {                try {                    Intent intent = getPackageManager().getLaunchIntentForPackage(PACKAGE_NAME_LAUNCHER);                    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);                    startActivity(intent);                } catch (Exception e) {                    Log.i(TAG, e.toString());                }                finish();            }        } else {            mSecretNumber = 0;        }    }});

0 0
原创粉丝点击