Browse Source

1.添加游戏进度弹窗

王鹏鹏 2 years ago
parent
commit
260767f3c0

+ 2 - 0
.idea/misc.xml

@@ -480,6 +480,7 @@
         <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/drawable/home_webview_progressbar_selector.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/layout/activity_base.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/layout/activity_base_web_view.xml" value="0.23697916666666666" />
+        <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/layout/dialog_evaluate.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/layout/dialog_loading.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/baselib/src/main/res/layout/rv_empty.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_introduction.xml" value="0.151" />
@@ -494,6 +495,7 @@
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/layout/activity_game_loading.xml" value="0.22239583333333332" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/layout/activity_main.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/layout/activity_play_game.xml" value="0.536" />
+        <entry key="..\:/workspace/hcp-pads/game/src/main/res/layout/dialog_game_result.xml" value="0.536" />
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_consultation_request.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_doctor_details.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pads/healthconsultation/src/main/res/layout/activity_payment.xml" value="0.23697916666666666" />

+ 68 - 0
game/src/main/java/com/yingyangfly/game/dialog/GameResultDialog.kt

@@ -0,0 +1,68 @@
+package com.yingyangfly.game.dialog
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.appcompat.widget.AppCompatButton
+import androidx.appcompat.widget.AppCompatTextView
+import androidx.fragment.app.DialogFragment
+import com.gyf.immersionbar.BarHide
+import com.gyf.immersionbar.ktx.immersionBar
+import com.yingyangfly.baselib.utils.ViewTool
+import com.yingyangfly.game.R
+
+/**
+ * 游戏结果弹窗
+ */
+class GameResultDialog : DialogFragment() {
+
+    private var tvGameLevel: AppCompatTextView? = null
+    private var tvTotalGameScore: AppCompatTextView? = null
+    private var tvGameScore: AppCompatTextView? = null
+    private var btnHome: AppCompatButton? = null
+    private var btnContinueThisLevel: AppCompatButton? = null
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        isCancelable = false
+        dialog?.setCanceledOnTouchOutside(true)
+    }
+
+    fun setData() {
+
+    }
+
+    override fun onStart() {
+        super.onStart()
+        dialog?.window?.setLayout(
+            ViewGroup.LayoutParams.MATCH_PARENT,
+            ViewGroup.LayoutParams.MATCH_PARENT
+        )
+        dialog?.window?.setBackgroundDrawableResource(R.color.transparent)
+    }
+
+    override fun onCreateView(
+        inflater: LayoutInflater,
+        container: ViewGroup?,
+        savedInstanceState: Bundle?
+    ): View? {
+        immersionBar {
+            hideBar(BarHide.FLAG_HIDE_BAR)
+            navigationBarColor(R.color.transparent)
+        }
+        val rootView = ViewTool.inflateFragmentPixels(
+            activity, R.layout.dialog_game_result, container, 1194, 834
+        )
+        findId(rootView)
+        return rootView
+    }
+
+    private fun findId(rootView: View) {
+        tvGameLevel = rootView.findViewById(R.id.tvGameLevel)
+        tvTotalGameScore = rootView.findViewById(R.id.tvTotalGameScore)
+        tvGameScore = rootView.findViewById(R.id.tvGameScore)
+        btnHome = rootView.findViewById(R.id.btnHome)
+        btnContinueThisLevel = rootView.findViewById(R.id.btnContinueThisLevel)
+    }
+}

+ 87 - 0
game/src/main/res/layout/dialog_game_result.xml

@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:ignore="ResourceName">
+
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:layout_width="@dimen/divider_656px"
+        android:layout_height="@dimen/divider_464px"
+        android:background="@mipmap/icon_game_fail"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent">
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvGameLevel"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@dimen/divider_139px"
+            android:textColor="@color/color_FF5F3100"
+            android:textSize="@dimen/divider_42px"
+            android:textStyle="bold"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            tools:text="当前关卡:第二关" />
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvTotalGameScore"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/divider_92px"
+            android:layout_marginTop="@dimen/divider_19px"
+            android:textColor="@color/color_FF5F3100"
+            android:textSize="@dimen/divider_32px"
+            android:textStyle="bold"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tvGameLevel"
+            tools:text="总得分:80分" />
+
+        <androidx.appcompat.widget.AppCompatTextView
+            android:id="@+id/tvGameScore"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@dimen/divider_19px"
+            android:layout_marginEnd="@dimen/divider_93px"
+            android:textColor="@color/color_FF5F3100"
+            android:textSize="@dimen/divider_32px"
+            android:textStyle="bold"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tvGameLevel"
+            tools:text="本关得分:80分" />
+
+        <androidx.appcompat.widget.AppCompatButton
+            android:id="@+id/btnHome"
+            android:layout_width="@dimen/divider_274px"
+            android:layout_height="@dimen/divider_96px"
+            android:layout_marginStart="@dimen/divider_44px"
+            android:layout_marginTop="@dimen/divider_39px"
+            android:background="@mipmap/icon_back_home"
+            android:gravity="center"
+            android:text="@string/homepage"
+            android:textColor="@android:color/white"
+            android:textSize="@dimen/divider_38px"
+            android:textStyle="bold"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/tvTotalGameScore" />
+
+        <androidx.appcompat.widget.AppCompatButton
+            android:id="@+id/btnContinueThisLevel"
+            android:layout_width="@dimen/divider_274px"
+            android:layout_height="@dimen/divider_96px"
+            android:layout_marginStart="@dimen/divider_19px"
+            android:layout_marginTop="@dimen/divider_39px"
+            android:background="@mipmap/icon_continue_this_level"
+            android:gravity="center"
+            android:text="@string/continue_this_level"
+            android:textColor="@android:color/white"
+            android:textSize="@dimen/divider_38px"
+            android:textStyle="bold"
+            app:layout_constraintStart_toEndOf="@+id/btnHome"
+            app:layout_constraintTop_toBottomOf="@+id/tvTotalGameScore" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
+</androidx.constraintlayout.widget.ConstraintLayout>

BIN
game/src/main/res/mipmap-xxhdpi/icon_back_home.png


BIN
game/src/main/res/mipmap-xxhdpi/icon_continue_this_level.png


BIN
game/src/main/res/mipmap-xxhdpi/icon_game_fail.png


+ 2 - 0
game/src/main/res/values/colors.xml

@@ -11,4 +11,6 @@
     <color name="color_FFFAFAFA" tools:ignore="ResourceName">#FFFAFAFA</color>
     <color name="color_FF8756FF" tools:ignore="ResourceName">#FF8756FF</color>
     <color name="color_FF77B0FF" tools:ignore="ResourceName">#FF77B0FF</color>
+    <color name="transparent" tools:ignore="ResourceName">#00000000</color><!-- 透明   -->
+    <color name="color_FF5F3100" tools:ignore="ResourceName">#FF5F3100</color>
 </resources>

+ 6 - 0
game/src/main/res/values/dimens.xml

@@ -7,6 +7,7 @@
     <dimen name="divider_693px" tools:ignore="ResourceName">693px</dimen>
     <dimen name="divider_689px" tools:ignore="ResourceName">689px</dimen>
     <dimen name="divider_684px" tools:ignore="ResourceName">684px</dimen>
+    <dimen name="divider_656px" tools:ignore="ResourceName">656px</dimen>
     <dimen name="divider_645px" tools:ignore="ResourceName">645px</dimen>
     <dimen name="divider_616px" tools:ignore="ResourceName">616px</dimen>
     <dimen name="divider_597px" tools:ignore="ResourceName">597px</dimen>
@@ -18,6 +19,7 @@
     <dimen name="divider_503px" tools:ignore="ResourceName">503px</dimen>
     <dimen name="divider_502px" tools:ignore="ResourceName">502px</dimen>
     <dimen name="divider_472px" tools:ignore="ResourceName">472px</dimen>
+    <dimen name="divider_464px" tools:ignore="ResourceName">464px</dimen>
     <dimen name="divider_445px" tools:ignore="ResourceName">445px</dimen>
     <dimen name="divider_443px" tools:ignore="ResourceName">443px</dimen>
     <dimen name="divider_440px" tools:ignore="ResourceName">440px</dimen>
@@ -56,6 +58,7 @@
     <dimen name="divider_290px" tools:ignore="ResourceName">290px</dimen>
     <dimen name="divider_289px" tools:ignore="ResourceName">289px</dimen>
     <dimen name="divider_285px" tools:ignore="ResourceName">285px</dimen>
+    <dimen name="divider_274px" tools:ignore="ResourceName">274px</dimen>
     <dimen name="divider_270px" tools:ignore="ResourceName">270px</dimen>
     <dimen name="divider_266px" tools:ignore="ResourceName">266px</dimen>
     <dimen name="divider_265px" tools:ignore="ResourceName">265px</dimen>
@@ -105,6 +108,7 @@
     <dimen name="divider_142px" tools:ignore="ResourceName">142px</dimen>
     <dimen name="divider_141px" tools:ignore="ResourceName">141px</dimen>
     <dimen name="divider_140px" tools:ignore="ResourceName">140px</dimen>
+    <dimen name="divider_139px" tools:ignore="ResourceName">139px</dimen>
     <dimen name="divider_138px" tools:ignore="ResourceName">138px</dimen>
     <dimen name="divider_135px" tools:ignore="ResourceName">135px</dimen>
     <dimen name="divider_133px" tools:ignore="ResourceName">133px</dimen>
@@ -132,7 +136,9 @@
     <dimen name="divider_102px" tools:ignore="ResourceName">102px</dimen>
     <dimen name="divider_101px" tools:ignore="ResourceName">101px</dimen>
     <dimen name="divider_100px" tools:ignore="ResourceName">100px</dimen>
+    <dimen name="divider_96px" tools:ignore="ResourceName">96px</dimen>
     <dimen name="divider_95px" tools:ignore="ResourceName">95px</dimen>
+    <dimen name="divider_93px" tools:ignore="ResourceName">93px</dimen>
     <dimen name="divider_90px" tools:ignore="ResourceName">90px</dimen>
     <dimen name="divider_89px" tools:ignore="ResourceName">89px</dimen>
     <dimen name="divider_88px" tools:ignore="ResourceName">88px</dimen>

+ 2 - 0
game/src/main/res/values/strings.xml

@@ -1,4 +1,6 @@
 <resources xmlns:tools="http://schemas.android.com/tools">
     <string name="started_training" tools:ignore="ResourceName">开始训练</string>
     <string name="pause_help" tools:ignore="ResourceName">暂停/帮助</string>
+    <string name="homepage" tools:ignore="ResourceName">返回首页</string>
+    <string name="continue_this_level" tools:ignore="ResourceName">继续本关</string>
 </resources>