Parcourir la source

1.添加获取mmse试题库UI跳转

王鹏鹏 il y a 2 ans
Parent
commit
a6cdb54598

+ 2 - 0
.idea/misc.xml

@@ -86,6 +86,8 @@
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/drawable/bg_previous_question.xml" value="0.1615" />
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/drawable/bg_selected_item.xml" value="0.1615" />
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/drawable/bg_unselected_item.xml" value="0.1615" />
+        <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/drawable/selector_train_radio.xml" value="0.1615" />
+        <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/drawable/selector_train_radio_unchecked.xml" value="0.1615" />
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/layout/activity_main.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/layout/activity_number.xml" value="0.23697916666666666" />
         <entry key="..\:/workspace/hcp-pad/mmse/src/main/res/layout/activity_questions.xml" value="0.4" />

+ 71 - 0
mmse/src/main/java/com/yingyangfly/mmse/fragment/JudgmentFragment.kt

@@ -1,22 +1,93 @@
 package com.yingyangfly.mmse.fragment
 
+import android.os.Bundle
+import android.text.TextUtils
+import androidx.core.os.bundleOf
+import androidx.navigation.Navigation
+import com.yingyang.mmse.R
 import com.yingyang.mmse.databinding.FragmentJudgmentBinding
 import com.yingyangfly.baselib.base.BaseFragment
+import com.yingyangfly.baselib.db.QuestionsBean
+import com.yingyangfly.baselib.ext.setOnSingleClickListener
 
 /**
  * 录入单个判断
  */
 class JudgmentFragment : BaseFragment<FragmentJudgmentBinding>() {
 
+    /**
+     * 原始问题id
+     */
+    var questionId = 0
+
+    var question: QuestionsBean? = null
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        questionId = arguments?.getInt("questionId") ?: 4
+        super.onCreate(savedInstanceState)
+    }
+
     override fun initViews() {
 
     }
 
     override fun initListener() {
+        binding {
+            btnPrevious.setOnSingleClickListener {
+                questionId--
+                if (questionId == 5) {
+                    val bundle = bundleOf("questionId" to questionId)
+                    val controller = Navigation.findNavController(it)
+                    controller.navigate(
+                        R.id.action_judgmentFragment_to_selectedItemFragment,
+                        bundle
+                    )
+                } else {
+                    loadData()
+                }
+            }
+            btnNext.setOnSingleClickListener {
+                if (questionId < 10) {
+                    questionId++
+                    loadData()
+                } else {
+
+                }
+            }
 
+            judgeRadio.setOnCheckedChangeListener { group, checkedId ->
+                if (checkedId == R.id.btnDeny) {
+                    question!!.inputString = "否"
+                } else if (checkedId == R.id.btnCorrect) {
+                    question!!.inputString = "是"
+                }
+            }
+        }
     }
 
     override fun initData() {
 
     }
+
+    override fun onResume() {
+        super.onResume()
+        loadData()
+    }
+
+    /**
+     * 加载数据
+     */
+    private fun loadData() {
+        if (dao != null) {
+            question = dao?.getQuestion(questionId)
+            if (question != null) {
+                binding {
+                    data = question
+                    btnDeny.isChecked = TextUtils.equals("否", question!!.inputString)
+                    btnCorrect.isChecked = TextUtils.equals("是", question!!.inputString)
+                    tvYear.text = question!!.inputString
+                }
+            }
+        }
+    }
 }

+ 5 - 0
mmse/src/main/res/color/txt_radio_color.xml

@@ -0,0 +1,5 @@
+<selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName">
+    <item android:color="@android:color/white" android:state_checked="true" />
+    <!-- not selected -->
+    <item android:color="@color/color_FF222222" android:state_checked="false" />
+</selector>

+ 8 - 0
mmse/src/main/res/drawable/selector_questions_radio.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName">
+    <item android:drawable="@drawable/bg_selected_item" android:state_checked="true" />
+    <item android:drawable="@drawable/bg_selected_item" android:state_selected="true" />
+    <item android:drawable="@drawable/bg_unselected_item" />
+</selector>
+
+

+ 41 - 28
mmse/src/main/res/layout/fragment_judgment.xml

@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <layout 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">
+    xmlns:app="http://schemas.android.com/apk/res-auto">
 
     <data>
 
@@ -85,34 +84,48 @@
             </LinearLayout>
         </com.google.android.material.card.MaterialCardView>
 
-        <androidx.appcompat.widget.AppCompatButton
-            android:layout_width="wrap_content"
+        <RadioGroup
+            android:id="@+id/judgeRadio"
+            android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:layout_marginStart="@dimen/divider_367px"
-            android:layout_marginTop="@dimen/divider_32px"
-            android:background="@drawable/bg_unselected_item"
-            android:gravity="center"
-            android:text="@string/deny"
-            android:textColor="@color/color_FF222222"
-            android:textSize="@dimen/divider_34px"
-            android:textStyle="bold"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/contentLayout" />
-
-        <androidx.appcompat.widget.AppCompatButton
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="@dimen/divider_32px"
-            android:layout_marginEnd="@dimen/divider_367px"
-            android:background="@drawable/bg_selected_item"
-            android:gravity="center"
-            android:text="@string/correct"
-            android:textColor="@android:color/white"
-            android:textSize="@dimen/divider_34px"
-            android:textStyle="bold"
+            android:gravity="center_horizontal"
+            android:orientation="horizontal"
             app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/contentLayout" />
-
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/contentLayout">
+
+            <RadioButton
+                android:id="@+id/btnDeny"
+                android:layout_width="@dimen/divider_191px"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/divider_32px"
+                android:layout_marginEnd="@dimen/divider_17px"
+                android:background="@drawable/selector_questions_radio"
+                android:button="@null"
+                android:gravity="center"
+                android:text="@string/deny"
+                android:textColor="@color/txt_radio_color"
+                android:textSize="@dimen/divider_34px"
+                android:textStyle="bold"
+                app:layout_constraintStart_toStartOf="parent"
+                app:layout_constraintTop_toBottomOf="@+id/contentLayout" />
+
+            <RadioButton
+                android:id="@+id/btnCorrect"
+                android:layout_width="@dimen/divider_191px"
+                android:layout_height="wrap_content"
+                android:layout_marginStart="@dimen/divider_17px"
+                android:layout_marginTop="@dimen/divider_32px"
+                android:background="@drawable/selector_questions_radio"
+                android:button="@null"
+                android:gravity="center"
+                android:text="@string/correct"
+                android:textColor="@color/txt_radio_color"
+                android:textSize="@dimen/divider_34px"
+                android:textStyle="bold"
+                app:layout_constraintEnd_toEndOf="parent"
+                app:layout_constraintTop_toBottomOf="@+id/contentLayout" />
+        </RadioGroup>
 
         <androidx.appcompat.widget.AppCompatButton
             android:id="@+id/btnPrevious"

+ 4 - 0
mmse/src/main/res/navigation/nav_home.xml

@@ -51,5 +51,9 @@
         <action
             android:id="@+id/action_judgmentFragment_to_inputFragment"
             app:destination="@id/inputFragment" />
+
+        <action
+            android:id="@+id/action_judgmentFragment_to_selectedItemFragment"
+            app:destination="@id/selectedItemFragment" />
     </fragment>
 </navigation>