add: 完成运动和喝水记录部分的功能

This commit is contained in:
SunnyQjm committed 2020-06-12 11:34:33 +08:00
1 parent d45f8ba215
commit 51ddd0d7c6
6 files changed
+200 -9

No files matched your search

@@ -19,7 +19,17 @@ class HealthRecordsFragment : MINVpnBaseFragment<HealthRecordsFragmentPresenter>
override fun getRes(): Int = R.layout.fragment_health_records
override fun initView() {
easyBar.init(EasyBar.Mode.NONE, titleRes = R.string.health_record)
easyBar.init(
EasyBar.Mode._ICON,
titleRes = R.string.health_record,
rightRes = R.drawable.input,
rightCallback = {
// 编辑健康信息
},
tinColor = R.color.white
)
}
override fun initialLoadData() {
@@ -35,7 +35,7 @@ class MedicalRecordsFragment : MINVpnBaseFragment<MedicalRecordsFragmentPresente
private lateinit var adapter: MedicalRecordAdapter
override fun initView() {
easyBar.init(
mode = EasyBar.Mode._ICON,
mode = EasyBar.Mode.NONE,
titleRes = R.string.medical_records,
rightRes = R.drawable.input,
tinColor = R.color.white,
@@ -54,8 +54,8 @@ class MedicalRecordsFragment : MINVpnBaseFragment<MedicalRecordsFragmentPresente
adapter = MedicalRecordAdapter(
mutableListOf(
MedicalRecord("999感冒灵", "一日三次,一次一包", 5),
MedicalRecord("清喉利咽颗粒", "一日一次,一次一包", 15)
MedicalRecord("999感冒灵", "一日三次,一次一包", 2),
MedicalRecord("清喉利咽颗粒", "一日一次,一次一包", 3)
)
)
recyclerview.layoutManager = LinearLayoutManager(activity)
@@ -1,13 +1,19 @@
package cn.tsr.personal_drug_management.activity.main.sport
import android.text.InputType
import cn.qjm253.quick_android_base.params.IntentParam
import cn.qjm253.quick_android_easy_bar.EasyBar
import cn.qjm253.quick_android_easy_bar.init
import cn.tsr.personal_drug_management.R
import cn.tsr.personal_drug_management.activity.base.MINVpnBaseFragment
import cn.tsr.personal_drug_management.custom_view.LineChartData
import com.qmuiteam.qmui.widget.dialog.QMUIDialog
import kotlinx.android.synthetic.main.bar_item.*
import kotlinx.android.synthetic.main.fragment_sport.*
import org.jetbrains.anko.doIfSdk
import org.jetbrains.anko.toast
import java.util.*
import kotlin.collections.ArrayList
open class SportFragment : MINVpnBaseFragment<SportFragmentPresenter>(),
@@ -41,11 +47,18 @@ open class SportFragment : MINVpnBaseFragment<SportFragmentPresenter>(),
tinColor = R.color.white
)
val currentDate = Date()
val dayOfWeek = Calendar.getInstance().get(Calendar.DAY_OF_WEEK)
for (i in mWeekItems.indices) {
val data = LineChartData()
data.item = mWeekItems[i]
data.point = mWeekSportPoints[i]
if (i + 1 >= dayOfWeek) {
data.point = 0
} else {
data.point = mWeekSportPoints[i]
}
sportList.add(data)
}
@@ -54,11 +67,52 @@ open class SportFragment : MINVpnBaseFragment<SportFragmentPresenter>(),
for (i in mWeekDrinkPoints.indices) {
val data = LineChartData()
data.item = mWeekItems[i]
data.point = mWeekDrinkPoints[i]
if (i + 1 >= dayOfWeek) {
data.point = 0
} else {
data.point = mWeekDrinkPoints[i]
}
drinkList.add(data)
}
mLineChart2.setData(drinkList)
imgEditDrink.setOnClickListener {
// 点击添加当天的喝水记录
val builder =
QMUIDialog.EditTextDialogBuilder(activity)
builder
.setTitle("输入今天喝了多少水")
.setInputType(InputType.TYPE_CLASS_NUMBER)
.setPlaceholder("例如:500")
.addAction("确认") { dialog: QMUIDialog?, index: Int ->
val waterMount = builder.editText.text.toString().toInt()
drinkList[dayOfWeek - 1].point = waterMount
mLineChart2.setData(drinkList)
mLineChart2.refreshView()
dialog?.dismiss()
}
.show()
}
imgEditSport.setOnClickListener {
// 点击添加当天的运动记录
val builder =
QMUIDialog.EditTextDialogBuilder(activity)
builder
.setTitle("输入今天运动了几个小时")
.setInputType(InputType.TYPE_CLASS_NUMBER)
.setPlaceholder("例如:1.5")
.addAction("确认") {dialog: QMUIDialog?, index: Int ->
val sportTime = builder.editText.text.toString().toInt()
sportList[dayOfWeek - 1].point = sportTime
mLineChart.setData(sportList)
mLineChart.refreshView()
dialog?.dismiss()
}
.show()
}
}
override fun initialLoadData() {
@@ -1,10 +1,111 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<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"
android:orientation="vertical">
<include layout="@layout/bar_item" />
<include
android:id="@+id/barItem"
layout="@layout/bar_item"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
<TextView
android:id="@+id/tvDecoration1"
style="@style/setting_title_decoration"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/barItem" />
<TextView
android:id="@+id/tvHeightTitle"
style="@style/setting_title"
android:text="@string/height"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration1"
app:layout_constraintStart_toEndOf="@+id/tvDecoration1"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration1" />
<TextView
android:id="@+id/tvHeight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="180"
app:layout_constraintStart_toStartOf="@+id/tvHeightTitle"
app:layout_constraintTop_toBottomOf="@+id/tvHeightTitle" />
<TextView
android:id="@+id/tvDecoration2"
style="@style/setting_title_decoration"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvHeight" />
<TextView
android:id="@+id/tvWeightTitle"
style="@style/setting_title"
android:text="@string/weight"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration2"
app:layout_constraintStart_toEndOf="@+id/tvDecoration2"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration2" />
<TextView
android:id="@+id/tvWeight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="50"
app:layout_constraintStart_toStartOf="@+id/tvWeightTitle"
app:layout_constraintTop_toBottomOf="@+id/tvWeightTitle" />
<TextView
android:id="@+id/tvDecoration3"
style="@style/setting_title_decoration"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvWeight" />
<TextView
android:id="@+id/tvRecordDateTitle"
style="@style/setting_title"
android:text="@string/last_record_date"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration3"
app:layout_constraintStart_toEndOf="@+id/tvDecoration3"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration3" />
<TextView
android:id="@+id/tvRecordDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="2020 年 06 月 10 日"
app:layout_constraintStart_toStartOf="@+id/tvRecordDateTitle"
app:layout_constraintTop_toBottomOf="@+id/tvRecordDateTitle" />
<TextView
android:id="@+id/tvDecoration4"
style="@style/setting_title_decoration"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvRecordDate" />
<TextView
android:id="@+id/tvWeightChangeGraph"
style="@style/setting_title"
android:text="@string/weight_change_graph"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration4"
app:layout_constraintStart_toEndOf="@+id/tvDecoration4"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration4" />
<cn.tsr.personal_drug_management.custom_view.LineChart
android:id="@+id/mLineChart"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_marginTop="20dp"
android:layout_marginEnd="10dp"
android:background="@color/white"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvWeightChangeGraph" />
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -18,11 +18,22 @@
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView"
style="@style/setting_title"
android:text="@string/sport_record"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration1"
app:layout_constraintStart_toEndOf="@+id/tvDecoration1"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration1" />
<cn.qjm253.quick_android_custom_view.tin_view.TinImageView
android:id="@+id/imgEditSport"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginEnd="10dp"
app:layout_constraintBottom_toTopOf="@+id/textView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView"
app:srcCompat="@drawable/input" />
</androidx.constraintlayout.widget.ConstraintLayout>
<cn.tsr.personal_drug_management.custom_view.LineChart
@@ -45,11 +56,22 @@
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView2"
style="@style/setting_title"
android:text="@string/drinking_record"
app:layout_constraintBottom_toTopOf="@+id/tvDecoration2"
app:layout_constraintStart_toEndOf="@+id/tvDecoration2"
app:layout_constraintTop_toBottomOf="@+id/tvDecoration2" />
<cn.qjm253.quick_android_custom_view.tin_view.TinImageView
android:id="@+id/imgEditDrink"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginEnd="10dp"
app:layout_constraintBottom_toTopOf="@+id/textView2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2"
app:srcCompat="@drawable/input" />
</androidx.constraintlayout.widget.ConstraintLayout>
<cn.tsr.personal_drug_management.custom_view.LineChart
+4
View File
@@ -40,4 +40,8 @@
<string name="save">保存</string>
<string name="sport_record">运动记录(小时)</string>
<string name="drinking_record">喝水记录(毫升)</string>
<string name="height">身高(cm)</string>
<string name="weight">体重(KG)</string>
<string name="last_record_date">最新记录日期</string>
<string name="weight_change_graph">体重变化图</string>
</resources>