Compare commits
2 Commits
wave-abs-s
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
607aa2306b | ||
|
|
538e186d02 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,6 +1,7 @@
|
||||
*.iml
|
||||
.gradle
|
||||
/local.properties
|
||||
/.idea/misc.xml
|
||||
/.idea/caches
|
||||
/.idea/libraries
|
||||
/.idea/modules.xml
|
||||
|
||||
1
.idea/misc.xml
generated
1
.idea/misc.xml
generated
@@ -19,7 +19,6 @@
|
||||
<entry key="app/src/main/res/layout/activity_main.xml" value="0.165" />
|
||||
<entry key="app/src/main/res/layout/activity_splash.xml" value="0.24375" />
|
||||
<entry key="app/src/main/res/layout/activity_test_right.xml" value="0.24375" />
|
||||
<entry key="app/src/main/res/layout/fragment_graph.xml" value="0.19791666666666666" />
|
||||
<entry key="app/src/main/res/layout/fragment_test_right_exp_reference.xml" value="0.25" />
|
||||
<entry key="app/src/main/res/layout/fragment_test_right_exp_sample.xml" value="0.25" />
|
||||
<entry key="app/src/main/res/layout/fragment_test_right_process.xml" value="0.24375" />
|
||||
|
||||
@@ -56,8 +56,6 @@ dependencies {
|
||||
|
||||
implementation 'com.opencsv:opencsv:4.6'
|
||||
|
||||
// For the Graph
|
||||
implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
|
||||
// implementation 'androidx.appcompat:appcompat:1.1.0'
|
||||
// implementation "androidx.core:core-ktx:+"
|
||||
// implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||
|
||||
@@ -4,5 +4,7 @@ enum class TestRightResultType {
|
||||
NORMAL,
|
||||
SICKLECELLTRAIT,
|
||||
SICKLECELLDISEASE,
|
||||
POSITIVEBORDERLINE,
|
||||
NEGATIVEBORDERLINE,
|
||||
UNDEFINED
|
||||
}
|
||||
@@ -61,20 +61,20 @@ class ResultCalculationWithMaxImpl : TestRightResultCalculation {
|
||||
testRightCalculationData.ratioMinRange = 0.0
|
||||
testRightCalculationData.ratioMaxRange = 0.28
|
||||
return TestRightResultType.NORMAL
|
||||
} else if (value >= 0.28 && value < 0.285) {
|
||||
} else if (value >= 0.28 && value < 0.33) {
|
||||
testRightCalculationData.ratioMinRange = 0.28
|
||||
testRightCalculationData.ratioMaxRange = 0.285
|
||||
return TestRightResultType.UNDEFINED
|
||||
} else if (value >= 0.285 && value < 0.52) {
|
||||
testRightCalculationData.ratioMinRange = 0.285
|
||||
testRightCalculationData.ratioMaxRange = 0.33
|
||||
return TestRightResultType.NEGATIVEBORDERLINE
|
||||
} else if (value >= 0.33 && value < 0.52) {
|
||||
testRightCalculationData.ratioMinRange = 0.33
|
||||
testRightCalculationData.ratioMaxRange = 0.52
|
||||
return TestRightResultType.SICKLECELLTRAIT
|
||||
} else if (value >= 0.52 && value < 0.525) {
|
||||
} else if (value >= 0.52 && value < 0.57) {
|
||||
testRightCalculationData.ratioMinRange = 0.52
|
||||
testRightCalculationData.ratioMaxRange = 0.525
|
||||
return TestRightResultType.UNDEFINED
|
||||
}else if (value >= 0.525) {
|
||||
testRightCalculationData.ratioMinRange = 0.525
|
||||
testRightCalculationData.ratioMaxRange = 0.57
|
||||
return TestRightResultType.POSITIVEBORDERLINE
|
||||
}else if (value >= 0.57) {
|
||||
testRightCalculationData.ratioMinRange = 0.57
|
||||
testRightCalculationData.ratioMaxRange = 999.0
|
||||
return TestRightResultType.SICKLECELLDISEASE
|
||||
}
|
||||
|
||||
@@ -1,102 +0,0 @@
|
||||
package com.example.hpos.presentation.testRight
|
||||
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
import androidx.fragment.app.Fragment
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.activity.OnBackPressedCallback
|
||||
import androidx.fragment.app.activityViewModels
|
||||
import com.example.hpos.R
|
||||
import com.example.hpos.databinding.FragmentGraphBinding
|
||||
import com.github.mikephil.charting.animation.Easing
|
||||
import com.github.mikephil.charting.data.Entry
|
||||
import com.github.mikephil.charting.data.LineData
|
||||
import com.github.mikephil.charting.data.LineDataSet
|
||||
|
||||
class GraphFragment : Fragment() {
|
||||
|
||||
private lateinit var binding: FragmentGraphBinding
|
||||
private val viewModel: TestRightViewModel by activityViewModels()
|
||||
|
||||
private val TAG = "GraphFragment"
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater, container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
): View {
|
||||
// Inflate the layout for this fragment
|
||||
binding = FragmentGraphBinding.inflate(inflater, container, false)
|
||||
return binding.root
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
setLineChartData()
|
||||
// setLineChartDataTest()
|
||||
|
||||
activity?.onBackPressedDispatcher?.addCallback(viewLifecycleOwner, object : OnBackPressedCallback(true) {
|
||||
override fun handleOnBackPressed() {
|
||||
parentFragmentManager.beginTransaction().replace(R.id.fl_main, TestRightResults()).commit()
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
private fun setLineChartData() {
|
||||
val linevalues = ArrayList<Entry>()
|
||||
|
||||
Log.d(TAG, "SIZE = ${viewModel.wavelengthToAbsorbance.size}")
|
||||
for (each in viewModel.wavelengthToAbsorbance) {
|
||||
Log.d(TAG, each[0].toString())
|
||||
// if (each[0] in 350.0..751.0) {
|
||||
linevalues.add(Entry(each[0].toFloat(), each[1].toFloat()))
|
||||
// }
|
||||
}
|
||||
|
||||
val lineDataSet = LineDataSet(linevalues, "Wavelength -> Absorbance")
|
||||
|
||||
//We add features to our chart
|
||||
lineDataSet.color = resources.getColor(R.color.blue_app)
|
||||
lineDataSet.fillColor = resources.getColor(R.color.blue_app)
|
||||
lineDataSet.setDrawFilled(true)
|
||||
lineDataSet.mode = LineDataSet.Mode.CUBIC_BEZIER
|
||||
lineDataSet.setDrawCircles(false)
|
||||
|
||||
//We connect our data to the UI Screen
|
||||
val data = LineData(lineDataSet)
|
||||
binding.getTheGraph.setBackgroundColor(resources.getColor(R.color.white))
|
||||
binding.getTheGraph.animateXY(1000, 1000, Easing.EaseInCubic)
|
||||
|
||||
binding.getTheGraph.data = data
|
||||
binding.getTheGraph.notifyDataSetChanged()
|
||||
|
||||
binding.getTheGraph.invalidate()
|
||||
}
|
||||
|
||||
// private fun setLineChartDataTest() {
|
||||
// val linevalues = ArrayList<Entry>()
|
||||
// var y = 0.1f
|
||||
// for (each in 350..555) {
|
||||
// linevalues.add(Entry(each.toFloat(), y))
|
||||
// y += 0.1f
|
||||
// }
|
||||
// for (each in 556..800) {
|
||||
// linevalues.add(Entry(each.toFloat(), y))
|
||||
// y -= 0.1f
|
||||
// }
|
||||
//
|
||||
// val lineDataSet = LineDataSet(linevalues, "HPOS")
|
||||
//
|
||||
// lineDataSet.mode = LineDataSet.Mode.LINEAR;
|
||||
//// lineDataSet.mode = LineDataSet.Mode.CUBIC_BEZIER
|
||||
//
|
||||
// lineDataSet.setDrawFilled(true)
|
||||
// lineDataSet.fillColor = resources.getColor(R.color.blue_app)
|
||||
//
|
||||
// val data = LineData(lineDataSet)
|
||||
// binding.getTheGraph.data = data
|
||||
// binding.getTheGraph.invalidate()
|
||||
// }
|
||||
|
||||
}
|
||||
@@ -110,13 +110,7 @@ class TestRightActivity : AppCompatActivity() {
|
||||
val availableDrivers = UsbSerialProber.getDefaultProber().findAllDrivers(manager)
|
||||
|
||||
if (availableDrivers.isEmpty()) {
|
||||
// Todo: To Add
|
||||
onErrorReported("No Device is Connected")
|
||||
|
||||
// Todo: To remove
|
||||
// supportFragmentManager.beginTransaction()
|
||||
// .replace(binding.flMain.id, GraphFragment()).commit()
|
||||
|
||||
} else {
|
||||
mDriver = availableDrivers[0]
|
||||
|
||||
|
||||
@@ -53,13 +53,66 @@ class TestRightResults : Fragment() {
|
||||
binding.ivNext.setOnClickListener {
|
||||
moveToSamplePage()
|
||||
}
|
||||
binding.ivGraph.setOnClickListener {
|
||||
parentFragmentManager.beginTransaction()
|
||||
.replace(R.id.fl_main, GraphFragment())
|
||||
.commit()
|
||||
}
|
||||
|
||||
private fun updateResults() {
|
||||
binding.tvName.text = getString(R.string.name_in_textview, viewModel.patientDetails.name)
|
||||
binding.tvAge.text =
|
||||
getString(R.string.age_in_textview, viewModel.patientDetails.age.toString())
|
||||
binding.tvGender.text =
|
||||
getString(R.string.gender_in_textview, viewModel.patientDetails.gender)
|
||||
|
||||
//TODO: remove
|
||||
viewModel.patientDetails.results = TestRightResultType.NEGATIVEBORDERLINE
|
||||
|
||||
if (DataHolder.selectedTestType == TestType.SICKLECERT){
|
||||
when (viewModel.patientDetails.results) {
|
||||
TestRightResultType.NORMAL -> {
|
||||
binding.resultNormal.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.SICKLECELLDISEASE -> {
|
||||
binding.resultDisease.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.SICKLECELLTRAIT -> {
|
||||
binding.resultTrait.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.POSITIVEBORDERLINE -> {
|
||||
binding.resultPositiveBorderline.visibility = View.VISIBLE
|
||||
binding.tvRecommended.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.NEGATIVEBORDERLINE -> {
|
||||
binding.resultNegativeBorderline.visibility = View.VISIBLE
|
||||
binding.tvRecommended.visibility = View.VISIBLE
|
||||
}
|
||||
else -> {
|
||||
// binding.resultUndefined.visibility = View.VISIBLE
|
||||
Toast.makeText(requireContext().applicationContext, "Please Test Again", Toast.LENGTH_LONG).show()
|
||||
moveToSamplePage()
|
||||
}
|
||||
}
|
||||
} else {
|
||||
when (viewModel.patientDetails.results) {
|
||||
TestRightResultType.SICKLECELLDISEASE -> {
|
||||
binding.resultDisease.visibility = View.VISIBLE
|
||||
binding.resultDisease.text = "Positive"
|
||||
}
|
||||
TestRightResultType.NORMAL -> {
|
||||
binding.resultNormal.visibility = View.VISIBLE
|
||||
binding.resultNormal.text = "Negative"
|
||||
}
|
||||
else -> {
|
||||
Toast.makeText(requireContext().applicationContext, "Please Test Again", Toast.LENGTH_LONG).show()
|
||||
moveToSamplePage()
|
||||
}
|
||||
}
|
||||
}
|
||||
if (viewModel.patientDetails.age < 5) {
|
||||
binding.tvRecommended.visibility = View.VISIBLE
|
||||
binding.tvRecommended.text = getString(R.string.recommended_age)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fun moveToSamplePage() {
|
||||
if (DataHolder.sampleReadCounter > Constants.MAXIMUM_TEST_ALLOWED_BEFORE_REFERENCE) {
|
||||
DataHolder.sampleReadCounter = 0
|
||||
@@ -132,77 +185,4 @@ class TestRightResults : Fragment() {
|
||||
viewModel.saveCsvForTesting(requireContext().applicationContext, "testing$fileName")
|
||||
}
|
||||
|
||||
private fun updateResults() {
|
||||
binding.tvName.text = getString(R.string.name_in_textview, viewModel.patientDetails.name)
|
||||
binding.tvAge.text =
|
||||
getString(R.string.age_in_textview, viewModel.patientDetails.age.toString())
|
||||
binding.tvGender.text =
|
||||
getString(R.string.gender_in_textview, viewModel.patientDetails.gender)
|
||||
|
||||
if (DataHolder.selectedTestType == TestType.SICKLECERT){
|
||||
when (viewModel.patientDetails.results) {
|
||||
TestRightResultType.NORMAL -> {
|
||||
binding.resultNormal.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.SICKLECELLDISEASE -> {
|
||||
binding.resultDisease.visibility = View.VISIBLE
|
||||
}
|
||||
TestRightResultType.SICKLECELLTRAIT -> {
|
||||
binding.resultTrait.visibility = View.VISIBLE
|
||||
}
|
||||
else -> {
|
||||
// binding.resultUndefined.visibility = View.VISIBLE
|
||||
Toast.makeText(requireContext().applicationContext, "Please Test Again", Toast.LENGTH_LONG).show()
|
||||
moveToSamplePage()
|
||||
// val i = Intent(requireContext().applicationContext, MainActivity::class.java)
|
||||
// startActivity(i)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
when (viewModel.patientDetails.results) {
|
||||
TestRightResultType.SICKLECELLDISEASE -> {
|
||||
binding.resultDisease.visibility = View.VISIBLE
|
||||
binding.resultDisease.text = "Positive"
|
||||
}
|
||||
TestRightResultType.NORMAL -> {
|
||||
binding.resultNormal.visibility = View.VISIBLE
|
||||
binding.resultNormal.text = "Negative"
|
||||
}
|
||||
else -> {
|
||||
Toast.makeText(requireContext().applicationContext, "Please Test Again", Toast.LENGTH_LONG).show()
|
||||
moveToSamplePage()
|
||||
// val i = Intent(requireContext().applicationContext, MainActivity::class.java)
|
||||
// startActivity(i)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// when (viewModel.patientDetails.results) {
|
||||
// TestRightResultType.NORMAL -> {
|
||||
// binding.resultNormal.visibility = View.VISIBLE
|
||||
// }
|
||||
// TestRightResultType.SICKLECELLDISEASE -> {
|
||||
// binding.resultDisease.visibility = View.VISIBLE
|
||||
// }
|
||||
// TestRightResultType.SICKLECELLTRAIT -> {
|
||||
// binding.resultTrait.visibility = View.VISIBLE
|
||||
// }
|
||||
// else -> {
|
||||
// binding.resultUndefined.visibility = View.VISIBLE
|
||||
// }
|
||||
// }
|
||||
|
||||
// Log.d(TAG, "\n\n\n\nFor intensity Reference array size = ${DataHolder.intensityReferenceArray.size}")
|
||||
// for (each in DataHolder.intensityReferenceArray){
|
||||
// Log.d(TAG, "${each}")
|
||||
// }
|
||||
//
|
||||
// Log.d(TAG, "\n\n\n\nFor intensity Reference array size = ${viewModel.intensitySampleArray.size}")
|
||||
// for (each in viewModel.intensitySampleArray){
|
||||
// Log.d(TAG, "${each}")
|
||||
// }
|
||||
// Log.d(TAG,"")
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
<vector android:autoMirrored="true" android:height="48dp"
|
||||
android:tint="#219AD6" android:viewportHeight="24"
|
||||
android:viewportWidth="24" android:width="48dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="@android:color/white" android:pathData="M14.06,9.94L12,9l2.06,-0.94L15,6l0.94,2.06L18,9l-2.06,0.94L15,12L14.06,9.94zM4,14l0.94,-2.06L7,11l-2.06,-0.94L4,8l-0.94,2.06L1,11l2.06,0.94L4,14zM8.5,9l1.09,-2.41L12,5.5L9.59,4.41L8.5,2L7.41,4.41L5,5.5l2.41,1.09L8.5,9zM4.5,20.5l6,-6.01l4,4L23,8.93l-1.41,-1.41l-7.09,7.97l-4,-4L3,19L4.5,20.5z"/>
|
||||
</vector>
|
||||
@@ -1,5 +1,5 @@
|
||||
<vector android:height="16dp" android:tint="#BB0303"
|
||||
<vector android:height="24dp" android:tint="#BB0303"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="@android:color/white" android:pathData="M12,2C6.47,2 2,6.47 2,12s4.47,10 10,10 10,-4.47 10,-10S17.53,2 12,2zM17,15.59L15.59,17 12,13.41 8.41,17 7,15.59 10.59,12 7,8.41 8.41,7 12,10.59 15.59,7 17,8.41 13.41,12 17,15.59z"/>
|
||||
</vector>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<vector android:height="16dp" android:tint="#2E7D32"
|
||||
<vector android:height="24dp" android:tint="#2E7D32"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="@android:color/white" android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM10,17l-5,-5 1.41,-1.41L10,14.17l7.59,-7.59L19,8l-9,9z"/>
|
||||
</vector>
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
<?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">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context=".presentation.testRight.GraphFragment">
|
||||
|
||||
<com.github.mikephil.charting.charts.LineChart
|
||||
android:id="@+id/getTheGraph"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="52dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.0"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</layout>
|
||||
@@ -86,101 +86,147 @@
|
||||
android:layout_marginTop="12dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:text="@string/results_in_textview"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/line" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_normal"
|
||||
style="@style/title3"
|
||||
android:layout_width="wrap_content"
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_results"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_green"
|
||||
android:drawablePadding="4dp"
|
||||
android:text="@string/normal"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_check_circle_24"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_result"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_result"
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_result" />
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tv_result">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_normal"
|
||||
style="@style/title1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_green"
|
||||
android:text="@string/normal"
|
||||
android:textAlignment="center"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_check_circle_24"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_disease"
|
||||
style="@style/title1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_red"
|
||||
android:text="@string/sickle_cell_disease"
|
||||
android:textAlignment="center"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_cancel_24"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_trait"
|
||||
style="@style/title1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_red"
|
||||
android:text="@string/sickle_cell_trait"
|
||||
android:textAlignment="center"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_cancel_24"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_positive_borderline"
|
||||
style="@style/title1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_red"
|
||||
android:text="@string/positive_borderline"
|
||||
android:textAlignment="center"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_cancel_24"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_negative_borderline"
|
||||
style="@style/title1"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_green"
|
||||
android:text="@string/negative_borderline"
|
||||
android:textAlignment="center"
|
||||
android:visibility="gone"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_check_circle_24"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_disease"
|
||||
style="@style/title3"
|
||||
android:layout_width="wrap_content"
|
||||
android:id="@+id/tv_recommended"
|
||||
style="@style/title2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_red"
|
||||
android:drawablePadding="4dp"
|
||||
android:layout_marginTop="4dp"
|
||||
android:visibility="gone"
|
||||
android:text="@string/sickle_cell_disease"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_cancel_24"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_result"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_result"
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_result" />
|
||||
android:text="@string/recommended"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toBottomOf="@id/cl_results" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_trait"
|
||||
style="@style/title3"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_red"
|
||||
android:drawablePadding="4dp"
|
||||
android:visibility="gone"
|
||||
android:text="@string/sickle_cell_trait"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_cancel_24"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_result"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_result"
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_result" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/result_undefined"
|
||||
style="@style/title3"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:background="@drawable/result_background_yellow"
|
||||
android:drawablePadding="4dp"
|
||||
android:visibility="gone"
|
||||
android:text="@string/undefined"
|
||||
app:drawableStartCompat="@drawable/ic_baseline_circle_24"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_result"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_result"
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_result" />
|
||||
<!-- <TextView-->
|
||||
<!-- android:id="@+id/result_undefined"-->
|
||||
<!-- style="@style/title3"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:layout_marginHorizontal="16dp"-->
|
||||
<!-- android:background="@drawable/result_background_yellow"-->
|
||||
<!-- android:drawablePadding="4dp"-->
|
||||
<!-- android:text="@string/undefined"-->
|
||||
<!-- android:visibility="visible"-->
|
||||
<!-- app:drawableStartCompat="@drawable/ic_baseline_circle_24"-->
|
||||
<!-- app:layout_constraintBottom_toBottomOf="@+id/tv_result"-->
|
||||
<!-- app:layout_constraintEnd_toEndOf="parent"-->
|
||||
<!-- app:layout_constraintHorizontal_bias="1"-->
|
||||
<!-- app:layout_constraintStart_toEndOf="@+id/tv_result"-->
|
||||
<!-- app:layout_constraintTop_toTopOf="@+id/tv_result" />-->
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<!-- <ImageView-->
|
||||
<!-- android:id="@+id/iv_download"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:layout_marginTop="42dp"-->
|
||||
<!-- android:layout_marginStart="24dp"-->
|
||||
<!-- android:src="@drawable/ic_baseline_file_download_24"-->
|
||||
<!-- app:layout_constraintStart_toStartOf="@id/cv_sample_details"-->
|
||||
<!-- app:layout_constraintTop_toBottomOf="@id/cv_sample_details" />-->
|
||||
<!-- <ImageView-->
|
||||
<!-- android:id="@+id/iv_download"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:layout_marginTop="42dp"-->
|
||||
<!-- android:layout_marginStart="24dp"-->
|
||||
<!-- android:src="@drawable/ic_baseline_file_download_24"-->
|
||||
<!-- app:layout_constraintStart_toStartOf="@id/cv_sample_details"-->
|
||||
<!-- app:layout_constraintTop_toBottomOf="@id/cv_sample_details" />-->
|
||||
|
||||
<!-- <TextView-->
|
||||
<!-- style="@style/title3"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:text="@string/download_report"-->
|
||||
<!-- android:textAlignment="center"-->
|
||||
<!-- android:textColor="@color/gray"-->
|
||||
<!-- app:layout_constraintEnd_toEndOf="@id/iv_download"-->
|
||||
<!-- app:layout_constraintStart_toStartOf="@id/iv_download"-->
|
||||
<!-- app:layout_constraintTop_toBottomOf="@id/iv_download" />-->
|
||||
<!-- <TextView-->
|
||||
<!-- style="@style/title3"-->
|
||||
<!-- android:layout_width="wrap_content"-->
|
||||
<!-- android:layout_height="wrap_content"-->
|
||||
<!-- android:text="@string/download_report"-->
|
||||
<!-- android:textAlignment="center"-->
|
||||
<!-- android:textColor="@color/gray"-->
|
||||
<!-- app:layout_constraintEnd_toEndOf="@id/iv_download"-->
|
||||
<!-- app:layout_constraintStart_toStartOf="@id/iv_download"-->
|
||||
<!-- app:layout_constraintTop_toBottomOf="@id/iv_download" />-->
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_home"
|
||||
@@ -189,8 +235,8 @@
|
||||
android:layout_marginTop="42dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:src="@drawable/ic_baseline_home_24"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_next"
|
||||
app:layout_constraintStart_toStartOf="@id/cv_sample_details"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_graph"
|
||||
app:layout_constraintTop_toBottomOf="@id/cv_sample_details" />
|
||||
|
||||
<TextView
|
||||
@@ -205,39 +251,16 @@
|
||||
app:layout_constraintStart_toStartOf="@id/iv_home"
|
||||
app:layout_constraintTop_toBottomOf="@id/iv_home" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_graph"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="42dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:layout_marginStart="24dp"
|
||||
android:src="@drawable/ic_baseline_auto_graph_24"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_home"
|
||||
app:layout_constraintEnd_toStartOf="@id/iv_next"
|
||||
app:layout_constraintTop_toBottomOf="@id/cv_sample_details" />
|
||||
|
||||
<TextView
|
||||
style="@style/title3"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="View\nSpectrum"
|
||||
android:textAlignment="center"
|
||||
android:textColor="@color/gray"
|
||||
app:layout_constraintEnd_toEndOf="@id/iv_graph"
|
||||
app:layout_constraintStart_toStartOf="@id/iv_graph"
|
||||
app:layout_constraintTop_toBottomOf="@id/iv_graph" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_next"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="42dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="42dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:src="@drawable/ic_baseline_new_label_24"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_graph"
|
||||
app:layout_constraintEnd_toEndOf="@id/cv_sample_details"
|
||||
app:layout_constraintStart_toEndOf="@id/iv_home"
|
||||
app:layout_constraintTop_toBottomOf="@id/cv_sample_details" />
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
<string name="yes_and_run">Yes, Run</string>
|
||||
|
||||
|
||||
|
||||
<!-- Instructions Text -->
|
||||
<string name="Instructions">Instructions</string>
|
||||
<string name="step1"><b><u>Step 1</u> : </b> Place the cuvette containing reference/baseline sample for referencing.</string>
|
||||
@@ -78,5 +79,9 @@
|
||||
<string name="sickle_find">Sickle Find</string>
|
||||
<string name="submit">Submit</string>
|
||||
<string name="name_error_2">Invalid character, Allowed characters are Letters, Numbers and ( ) _ - , . only</string>
|
||||
<string name="recommended">\*Result to be confirmed with laboratory test</string>
|
||||
<string name="recommended_age">\*Result to be confirmed with laboratory test as age of the patient is less than 5 years</string>
|
||||
<string name="positive_borderline">Positive Borderline</string>
|
||||
<string name="negative_borderline">Negative Borderline</string>
|
||||
|
||||
</resources>
|
||||
Reference in New Issue
Block a user