Bläddra i källkod

添加工具类

yangchong 4 år sedan
förälder
incheckning
f7364f893c

+ 40 - 0
Demo/src/main/java/com/yc/ycvideoplayer/newPlayer/activity/TypeActivity.java

@@ -3,6 +3,7 @@ package com.yc.ycvideoplayer.newPlayer.activity;
 import android.annotation.SuppressLint;
 import android.content.Intent;
 import android.os.Bundle;
+import android.view.KeyEvent;
 import android.view.View;
 import android.widget.TextView;
 
@@ -240,4 +241,43 @@ public class TypeActivity extends AppCompatActivity implements View.OnClickListe
             e.printStackTrace();
         }
     }
+
+
+
+
+    /**
+     * 再点一次退出程序时间设置
+     */
+    private static final long WAIT_TIME = 2000L;
+    private long touchTime = 0;
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (keyCode == KeyEvent.KEYCODE_BACK) {
+            //双击返回桌面
+            if (System.currentTimeMillis() - touchTime < WAIT_TIME) {
+                //finish();
+                //可将activity 退到后台,注意不是finish()退出。
+                //判断Activity是否是task根
+                //使用moveTaskToBack是为了让app退出时,不闪屏,退出柔和一些
+                if (this.isTaskRoot()){
+                    //参数为false——代表只有当前activity是task根,指应用启动的第一个activity时,才有效;
+                    moveTaskToBack(false);
+                } else {
+                    //参数为true——则忽略这个限制,任何activity都可以有效。
+                    //使用此方法,便不会执行Activity的onDestroy()方法
+                    moveTaskToBack(true);
+                }
+                //注意这里是finish所有activity,然后杀死进程
+                //ActivityManageUtils.getInstance().appExit(this);
+            } else {
+                touchTime = System.currentTimeMillis();
+                //参考易车,抖音自定义吐司
+                BaseToast.showRoundRectToast("再按一次退出");
+            }
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
+
 }

+ 8 - 2
VideoTool/src/main/java/com/yc/videotool/ClickUtils.java

@@ -20,7 +20,13 @@ public final class ClickUtils {
      * 默认最大点击间隔时间
      */
     private static final int MAX_INTERVAL = 500;
+    /**
+     * 最后一次点击的时间戳
+     */
     private static long mLastClickTime;
+    /**
+     * tag标记的集合
+     */
     private static final HashMap<String, Long> tagMaps = new HashMap<>();
 
     /**
@@ -34,7 +40,7 @@ public final class ClickUtils {
     /**
      * 判断一个控件是否xx时间内重复点击
      * @param maxInterval           设置间隔时间
-     * @return
+     * @return                      true表示是重复点击
      */
     public static boolean isFastDoubleClick(int maxInterval) {
         long current = System.currentTimeMillis();
@@ -50,7 +56,7 @@ public final class ClickUtils {
      * 判断一个控件是否xx时间内重复点击
      * @param maxInterval           设置间隔时间
      * @param tag                   标记
-     * @return
+     * @return                      true表示是重复点击
      */
     public static boolean isFastDoubleClickWithTag(int maxInterval, String tag) {
         if (TextUtils.isEmpty(tag)) {