Browse Source

1.优化游戏结算页面UI

王鹏鹏 1 year ago
parent
commit
4558c4abb3

+ 1 - 0
.idea/misc.xml

@@ -504,6 +504,7 @@
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_progressbar_selector.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_record.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_score.xml" value="0.151" />
+        <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_score_settlement.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_settlement.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_title.xml" value="0.151" />
         <entry key="..\:/workspace/hcp-pads/game/src/main/res/drawable/bg_game_type.xml" value="0.151" />

+ 2 - 2
baselib/build.gradle

@@ -40,7 +40,7 @@ android {
             buildConfigField "String", "BAIDU_SECRETKEY", "\"41Fzb2ZIuKRGNtrVcQOHxEI3vFM4Rkxi\""
             buildConfigField "Boolean", "SINGLE_MODULE", "${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"d400f20398\""
-            buildConfigField "String", "API_URL", "\"http://192.168.0.122:8110\""
+            buildConfigField "String", "API_URL", "\"http://60.205.201.7:8110\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
 
@@ -54,7 +54,7 @@ android {
             buildConfigField "String", "BAIDU_SECRETKEY", "\"41Fzb2ZIuKRGNtrVcQOHxEI3vFM4Rkxi\""
             buildConfigField "Boolean", "SINGLE_MODULE", "${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"ad3db4d529\""
-            buildConfigField "String", "API_URL", "\"http://192.168.0.122:8110\""
+            buildConfigField "String", "API_URL", "\"http://60.205.201.7:8110\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
     }

+ 1 - 0
game/src/main/java/com/yingyangfly/game/introduction/GameIntroductionActivity.kt

@@ -188,6 +188,7 @@ class GameIntroductionActivity :
                             .withString("gameCode", gameCode)
                             .withString("playClass", playClass)
                             .withString("url", url)
+                            .withString("gameType", gameBean!!.gameType)
                             .withString("gameTotalScore", gameBean!!.gameTotalScore)
                             .withString("gameInbetweenImage", gameInbetweenImage)
                             .withString("gameBackgroundImage", gameBackgroundImage)

+ 3 - 0
game/src/main/java/com/yingyangfly/game/play/PlayGameActivity.kt

@@ -49,6 +49,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
     private var newStartGame = true
     private var gameCode: String = ""
     private var playClass: String = ""
+    private var gameType: String = ""
     private var url: String = ""
     private var gameTotalScore: String = ""
     private var gameInbetweenImage = ""
@@ -62,6 +63,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
         gameCode = intent.getStringExtra("gameCode") ?: ""
         playClass = intent.getStringExtra("playClass") ?: ""
         url = intent.getStringExtra("url") ?: ""
+        gameType = intent.getStringExtra("gameType") ?: ""
         gameTotalScore = intent.getStringExtra("gameTotalScore") ?: ""
         gameInbetweenImage = intent.getStringExtra("gameInbetweenImage") ?: ""
         gameBackgroundImage = intent.getStringExtra("gameBackgroundImage") ?: ""
@@ -481,6 +483,7 @@ class PlayGameActivity : BaseMVVMActivity<ActivityPlayGameBinding, PlayGameViewM
                         ARouter.getInstance().build(RouterUrlCommon.gameSettlement)
                             .withString("gameCode", gameCode)
                             .withString("playClass", playClass)
+                            .withString("gameType", gameType)
                             .withTransition(R.anim.leftin, R.anim.leftout)
                             .navigation(mContext)
                     }

+ 9 - 3
game/src/main/java/com/yingyangfly/game/settlement/GameSettlementActivity.kt

@@ -2,6 +2,7 @@ package com.yingyangfly.game.settlement
 
 import android.annotation.SuppressLint
 import android.os.Bundle
+import android.text.Html
 import android.view.MotionEvent
 import android.view.View
 import com.alibaba.android.arouter.facade.annotation.Route
@@ -26,12 +27,14 @@ class GameSettlementActivity :
 
     private var gameCode = ""
     private var playClass = ""
+    private var gameType = ""
     private var gameDetail = mutableListOf<Detail>()
     private val adapter by lazy { GameResultAdapter() }
 
     override fun onCreate(savedInstanceState: Bundle?) {
         gameCode = intent.getStringExtra("gameCode") ?: ""
         playClass = intent.getStringExtra("playClass") ?: ""
+        gameType = intent.getStringExtra("gameType") ?: ""
         super.onCreate(savedInstanceState)
     }
 
@@ -39,6 +42,8 @@ class GameSettlementActivity :
         binding {
             rvGameLevel.adapter = adapter
             adapter.setData(gameDetail)
+            val str = "继续加油,努力超越自己!\n坚持训练下去,你的<font color='#FF0000'>$gameType</font>分配能力会得到很大的提升"
+            gameEncouragingWords.setText(Html.fromHtml(str))
         }
     }
 
@@ -46,6 +51,7 @@ class GameSettlementActivity :
     override fun initListener() {
         binding {
             backLayout.setOnTouchListener(this@GameSettlementActivity)
+            btnDetermine.setOnTouchListener(this@GameSettlementActivity)
         }
     }
 
@@ -60,20 +66,20 @@ class GameSettlementActivity :
     override fun onTouch(v: View, event: MotionEvent): Boolean {
         when (event.action) {
             MotionEvent.ACTION_DOWN -> {
-                if (v.id == R.id.backLayout) {
+                if (v.id == R.id.backLayout || v.id == R.id.btnDetermine) {
                     v.startAnimation(getScaleAnimation())
                 }
             }
             MotionEvent.ACTION_UP -> {
                 v.startAnimation(getEndAnimation())
-                if (v.id == R.id.backLayout) {
+                if (v.id == R.id.backLayout || v.id == R.id.btnDetermine) {
                     runOnUiThread {
                         finish()
                     }
                 }
             }
             MotionEvent.ACTION_CANCEL -> {
-                if (v.id == R.id.backLayout) {
+                if (v.id == R.id.backLayout || v.id == R.id.btnDetermine) {
                     v.startAnimation(getEndAnimation())
                 }
             }

+ 7 - 0
game/src/main/res/drawable/bg_game_score_settlement.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="ResourceName">
+    <corners android:radius="@dimen/divider_29px" />
+    <solid android:color="@color/color_FFFBD641" />
+</shape>

+ 62 - 8
game/src/main/res/layout/activity_game_settlement.xml

@@ -23,7 +23,9 @@
             android:layout_marginStart="@dimen/divider_32px"
             android:layout_marginTop="@dimen/divider_32px"
             android:background="@drawable/bg_game_back"
+            android:fontFamily="@font/lcb"
             android:gravity="center"
+            android:includeFontPadding="false"
             android:text="@string/game_back"
             android:textColor="@android:color/white"
             android:textSize="@dimen/divider_28px"
@@ -56,12 +58,15 @@
                 android:background="@mipmap/icon_game_result_bg" />
 
             <androidx.appcompat.widget.AppCompatTextView
+                android:id="@+id/gameEncouragingWords"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
                 android:layout_marginStart="@dimen/divider_58px"
                 android:layout_marginTop="@dimen/divider_21px"
                 android:layout_marginEnd="@dimen/divider_58px"
+                android:fontFamily="@font/lcb"
                 android:gravity="start"
+                android:includeFontPadding="false"
                 android:text="@string/keep_going_try_to_surpass_yourself"
                 android:textColor="@color/color_FF6F3218"
                 android:textSize="@dimen/divider_24px"
@@ -107,10 +112,11 @@
                         android:layout_height="wrap_content"
                         android:layout_marginStart="@dimen/divider_26px"
                         android:layout_marginTop="@dimen/divider_45px"
+                        android:fontFamily="@font/lcb"
+                        android:includeFontPadding="false"
                         android:text="@{data.gameName}"
                         android:textColor="@color/color_FFFF6F6F"
                         android:textSize="@dimen/divider_28px"
-                        android:textStyle="bold"
                         app:layout_constraintStart_toEndOf="@+id/gameImage"
                         app:layout_constraintTop_toTopOf="parent"
                         tools:text="抓小羊" />
@@ -151,18 +157,66 @@
                 android:layout_height="match_parent">
 
                 <androidx.appcompat.widget.AppCompatTextView
-                    android:layout_width="wrap_content"
+                    android:id="@+id/tvGameSettlement"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_marginStart="@dimen/divider_26px"
-                    android:layout_marginTop="@dimen/divider_45px"
-                    android:text='@{"游戏得分"+data.totalGameScore}'
-                    android:textColor="@color/color_FFFF6F6F"
-                    android:textSize="@dimen/divider_32px"
-                    android:textStyle="bold"
+                    android:layout_marginTop="@dimen/divider_156px"
+                    android:fontFamily="@font/lcb"
+                    android:gravity="center"
+                    android:includeFontPadding="false"
+                    android:text="@string/training_completion"
+                    android:textColor="@color/color_FFAA5413"
+                    android:textSize="@dimen/divider_28px"
                     app:layout_constraintEnd_toEndOf="parent"
                     app:layout_constraintStart_toStartOf="parent"
                     app:layout_constraintTop_toTopOf="parent" />
 
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvGameScore"
+                    android:layout_width="@dimen/divider_217px"
+                    android:layout_height="@dimen/divider_58px"
+                    android:layout_marginTop="@dimen/divider_41px"
+                    android:background="@drawable/bg_game_score_settlement"
+                    android:fontFamily="@font/lcb"
+                    android:gravity="center"
+                    android:includeFontPadding="false"
+                    android:text="@{data.totalGameScore}"
+                    android:textColor="@android:color/white"
+                    android:textSize="@dimen/divider_28px"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/tvGameSettlement" />
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:id="@+id/tvGameScoreInfo"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_marginTop="@dimen/divider_21px"
+                    android:fontFamily="@font/lcb"
+                    android:gravity="center"
+                    android:includeFontPadding="false"
+                    android:text="@string/game_score"
+                    android:textColor="@color/color_FFAA5413"
+                    android:textSize="@dimen/divider_28px"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toBottomOf="@+id/tvGameScore" />
+
+                <androidx.appcompat.widget.AppCompatButton
+                    android:id="@+id/btnDetermine"
+                    android:layout_width="@dimen/divider_191px"
+                    android:layout_height="@dimen/divider_58px"
+                    android:layout_marginBottom="@dimen/divider_42px"
+                    android:background="@mipmap/icon_confirm_settlement"
+                    android:gravity="center"
+                    android:includeFontPadding="false"
+                    android:text="@string/determine"
+                    android:textColor="@android:color/white"
+                    android:textSize="@dimen/divider_28px"
+                    app:layout_constraintBottom_toBottomOf="parent"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintStart_toStartOf="parent" />
+
             </androidx.constraintlayout.widget.ConstraintLayout>
         </FrameLayout>
     </androidx.constraintlayout.widget.ConstraintLayout>

+ 2 - 4
game/src/main/res/layout/item_game_result.xml

@@ -27,16 +27,14 @@
 
         <androidx.appcompat.widget.AppCompatImageView
             android:id="@+id/levelImage"
-            android:layout_width="0dp"
+            android:layout_width="@dimen/divider_430px"
             android:layout_height="@dimen/divider_32px"
-            android:layout_marginStart="@dimen/divider_14px"
-            android:layout_weight="1" />
+            android:layout_marginStart="@dimen/divider_14px" />
 
         <androidx.appcompat.widget.AppCompatTextView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginStart="@dimen/divider_14px"
-            android:layout_marginEnd="@dimen/divider_36px"
             android:layout_marginBottom="@dimen/divider_4px"
             android:text='@{data.gameScore}'
             android:textColor="@color/color_FFFFBA53"

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


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

@@ -43,4 +43,6 @@
     <color name="color_FFFF9E58" tools:ignore="ResourceName">#FFFF9E58</color>
     <color name="color_FFCD7E21" tools:ignore="ResourceName">#FFCD7E21</color>
     <color name="color_FF4F6548" tools:ignore="ResourceName">#FF4F6548</color>
+    <color name="color_FFAA5413" tools:ignore="ResourceName">#FFAA5413</color>
+    <color name="color_FFFBD641" tools:ignore="ResourceName">#FFFBD641</color>
 </resources>

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

@@ -104,6 +104,7 @@
     <dimen name="divider_226px" tools:ignore="ResourceName">226px</dimen>
     <dimen name="divider_224px" tools:ignore="ResourceName">224px</dimen>
     <dimen name="divider_220px" tools:ignore="ResourceName">220px</dimen>
+    <dimen name="divider_217px" tools:ignore="ResourceName">217px</dimen>
     <dimen name="divider_214px" tools:ignore="ResourceName">214px</dimen>
     <dimen name="divider_213px" tools:ignore="ResourceName">213px</dimen>
     <dimen name="divider_212px" tools:ignore="ResourceName">212px</dimen>
@@ -113,6 +114,7 @@
     <dimen name="divider_200px" tools:ignore="ResourceName">200px</dimen>
     <dimen name="divider_196px" tools:ignore="ResourceName">196px</dimen>
     <dimen name="divider_195px" tools:ignore="ResourceName">195px</dimen>
+    <dimen name="divider_191px" tools:ignore="ResourceName">191px</dimen>
     <dimen name="divider_190px" tools:ignore="ResourceName">190px</dimen>
     <dimen name="divider_189px" tools:ignore="ResourceName">189px</dimen>
     <dimen name="divider_188px" tools:ignore="ResourceName">188px</dimen>
@@ -126,6 +128,7 @@
     <dimen name="divider_163px" tools:ignore="ResourceName">163px</dimen>
     <dimen name="divider_160px" tools:ignore="ResourceName">160px</dimen>
     <dimen name="divider_158px" tools:ignore="ResourceName">158px</dimen>
+    <dimen name="divider_156px" tools:ignore="ResourceName">156px</dimen>
     <dimen name="divider_154px" tools:ignore="ResourceName">154px</dimen>
     <dimen name="divider_153px" tools:ignore="ResourceName">153px</dimen>
     <dimen name="divider_152px" tools:ignore="ResourceName">152px</dimen>

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

@@ -15,4 +15,5 @@
     <string name="keep_going_try_to_surpass_yourself" tools:ignore="ResourceName">继续加油,努力超越自己!\n坚持训练下去,你的注意力分配能力会得到很大的提升</string>
     <string name="training_completion" tools:ignore="ResourceName">训练完成</string>
     <string name="full_screen" tools:ignore="ResourceName">全屏</string>
+    <string name="game_score" tools:ignore="ResourceName">游戏得分</string>
 </resources>