Ver Fonte

1.优化代码

王鹏鹏 há 2 anos atrás
pai
commit
1ef20c69aa

+ 5 - 0
baselib/src/main/java/com/yingyangfly/baselib/utils/RxBusCodes.kt

@@ -79,4 +79,9 @@ object RxBusCodes {
      * 游戏倒计时弹框消失
      */
     const val COUNTDOWNSUCCESS = "countdownSuccess"
+
+    /**
+     * 游戏设置全屏
+     */
+    const val GAMEFULLSCREEN = "gameFullScreen"
 }

+ 1 - 0
game/src/main/java/com/yingyangfly/game/dialog/CountdownDialog.kt

@@ -159,6 +159,7 @@ class CountdownDialog : DialogFragment() {
             }
             if (it == time) {
                 countdown = true
+                LiveEventBusUtil.send(RxBusCodes.GAMEFULLSCREEN, "")
                 if (loadingOver) {
                     rxTimer.cancel()
                     onDialogClickListener?.invoke("")

+ 27 - 17
game/src/main/java/com/yingyangfly/game/play/PlayGameActivity.kt

@@ -108,9 +108,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
             tvPause.setOnTouchListener(this@PlayGameActivity)
             tvPauses.setOnTouchListener(this@PlayGameActivity)
             tvFullScreen.setOnTouchListener(this@PlayGameActivity)
-            tvReduce.setOnSingleClickListener {
-                setReduce(true)
-            }
+            tvReduce.setOnTouchListener(this@PlayGameActivity)
         }
         binding.gameLayout.viewTreeObserver.addOnGlobalLayoutListener(object :
             ViewTreeObserver.OnGlobalLayoutListener {
@@ -226,30 +224,36 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
     override fun onTouch(v: View, event: MotionEvent): Boolean {
         when (event.action) {
             MotionEvent.ACTION_DOWN -> {
-                if (v.id == R.id.tvPause || v.id == R.id.tvPauses || v.id == R.id.tvFullScreen) {
+                if (v.id == R.id.tvPause || v.id == R.id.tvPauses || v.id == R.id.tvFullScreen || v.id == R.id.tvReduce) {
                     v.startAnimation(getScaleAnimation())
                 }
             }
             MotionEvent.ACTION_UP -> {
                 v.startAnimation(getEndAnimation())
-                if (v.id == R.id.tvPause || v.id == R.id.tvPauses) {
-                    runOnUiThread {
-                        binding.webView.evaluateJavascript(
-                            "javascript:CallPauseGame()"
-                        ) {
-                            ARouter.getInstance().build(RouterUrlCommon.gameIntroduction)
-                                .withString("gameCode", gameCode)
-                                .withString("playClass", playClass)
-                                .withTransition(R.anim.leftin, R.anim.leftout)
-                                .navigation(mContext)
+                when (v.id) {
+                    R.id.tvPause, R.id.tvPauses -> {
+                        runOnUiThread {
+                            binding.webView.evaluateJavascript(
+                                "javascript:CallPauseGame()"
+                            ) {
+                                ARouter.getInstance().build(RouterUrlCommon.gameIntroduction)
+                                    .withString("gameCode", gameCode)
+                                    .withString("playClass", playClass)
+                                    .withTransition(R.anim.leftin, R.anim.leftout)
+                                    .navigation(mContext)
+                            }
                         }
                     }
-                } else if (v.id == R.id.tvFullScreen) {
-                    setReduce(false)
+                    R.id.tvFullScreen -> {
+                        setReduce(false)
+                    }
+                    R.id.tvReduce -> {
+                        setReduce(true)
+                    }
                 }
             }
             MotionEvent.ACTION_CANCEL -> {
-                if (v.id == R.id.tvPause || v.id == R.id.tvPauses || v.id == R.id.tvFullScreen) {
+                if (v.id == R.id.tvPause || v.id == R.id.tvPauses || v.id == R.id.tvFullScreen || v.id == R.id.tvReduce) {
                     v.startAnimation(getEndAnimation())
                 }
             }
@@ -427,6 +431,12 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
         LiveEventBusUtil.observer<String>(this, RxBusCodes.COUNTDOWNSUCCESS) {
             countdownSuccess = true
         }
+        //游戏设置全屏
+        LiveEventBusUtil.observer<String>(this, RxBusCodes.GAMEFULLSCREEN) {
+            binding.webView.post {
+                setReduce(false)
+            }
+        }
     }
 
     /**