Forráskód Böngészése

base time activity

liuzhenxing1118 4 hónapja
szülő
commit
451596cf3b

+ 39 - 0
app/src/main/java/com/xplora/xponboarding/Activity/BaseTimerActivity.java

@@ -0,0 +1,39 @@
+package com.xplora.xponboarding.Activity;
+
+import java.util.Timer;
+import java.util.TimerTask;
+
+public class BaseTimerActivity extends BaseActivity {
+    private Timer mTimer = null;
+    private int mType = 0;
+
+    protected void onTimerCallback(int type) {};
+
+    protected void startTimer(int type, long count) {
+        if (mType != 0)
+            return;
+        mType = type;
+        stopTimer();
+        mTimer = new Timer();
+        mTimer.schedule(new TimerTask() {
+            @Override
+            public void run() {
+                onTimerCallback(mType);
+            }
+        }, count);
+    }
+
+    protected void stopTimer() {
+        if (mTimer != null) {
+            mTimer.cancel();
+        }
+        mTimer = null;
+        mType = 0;
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+        stopTimer();
+    }
+}

+ 5 - 23
app/src/main/java/com/xplora/xponboarding/Activity/ShutdownActivity.java

@@ -10,14 +10,13 @@ import com.xplora.xponboarding.R;
 import java.util.Timer;
 import java.util.TimerTask;
 
-public class ShutdownActivity extends BaseActivity {
+public class ShutdownActivity extends BaseTimerActivity {
     public TextView mTitleTV = null;
     public TextView mContentTV = null;
     public TextView mContent2TV = null;
     public Button mCancelButton = null;
     public Button mSureButton = null;
     public Button mBottomButton = null;
-    private Timer mTimer = null;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -27,7 +26,7 @@ public class ShutdownActivity extends BaseActivity {
 
         initView();
         refreshView();
-        initTimer();
+        startTimer(1, 1000 * 60); //一分钟
     }
 
     private void initView() {
@@ -51,26 +50,9 @@ public class ShutdownActivity extends BaseActivity {
         });
     }
 
-    private void initTimer() {
-        if (mTimer != null) {
-            mTimer.cancel();
-            mTimer = null;
-        }
-        mTimer = new Timer();
-        mTimer.schedule(new TimerTask() {
-            @Override
-            public void run() {
-                shutdown();
-            }
-        },1000 * 60); //一分钟
-    }
-
     @Override
-    protected void onPause() {
-        super.onPause();
-        if (mTimer != null) {
-            mTimer.cancel();
-            mTimer = null;
-        }
+    protected void onTimerCallback(int type) {
+        super.onTimerCallback(type);
+        shutdown();
     }
 }