Widget DatePicker en la actividad para agregar receta
This commit is contained in:
parent
2a21d6b537
commit
30a54fe6c6
|
@ -13,6 +13,8 @@ import android.widget.Toast
|
|||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.terratenientes.medicalhealth.databinding.ActivityRecetaBinding
|
||||
import com.terratenientes.medicalhealth.utilidad.DatePickerFragment
|
||||
import java.util.Date
|
||||
|
||||
class RecetaActivity : AppCompatActivity(), OnItemSelectedListener {
|
||||
private lateinit var binding : ActivityRecetaBinding
|
||||
|
@ -33,6 +35,9 @@ class RecetaActivity : AppCompatActivity(), OnItemSelectedListener {
|
|||
binding.btnAgregarReceta.setOnClickListener {
|
||||
agregarReceta()
|
||||
}
|
||||
binding.tvDatepicker.setOnClickListener{
|
||||
showPickerDialog()
|
||||
}
|
||||
}
|
||||
@SuppressLint("Range")
|
||||
private fun obtenerNombrePacientes() : ArrayList<String>{
|
||||
|
@ -57,12 +62,13 @@ class RecetaActivity : AppCompatActivity(), OnItemSelectedListener {
|
|||
val edadPaciente = (binding.etEdadPaciente.text.toString()).toInt()
|
||||
val pesoPaciente = (binding.etPesoPaciente.text.toString()).toDouble()
|
||||
val medicamento= binding.etRecetaMedicamento.text.toString()
|
||||
val fecha=binding.etFecha.text.toString()
|
||||
val fecha=binding.tvFecha.text.toString()
|
||||
val dosis = binding.etDosisMedicamento.text.toString()
|
||||
val duracion= binding.etDuracion.text.toString()
|
||||
val receta = Receta(nombrePaciente,edadPaciente,pesoPaciente,medicamento,fecha,dosis,duracion)
|
||||
db.agregarReceta(receta)
|
||||
Toast.makeText(this@RecetaActivity , "RECETA AGREGADA CORRECTAMENTE", Toast.LENGTH_LONG).show()
|
||||
finish()
|
||||
}
|
||||
|
||||
override fun onItemSelected(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {
|
||||
|
@ -74,4 +80,13 @@ class RecetaActivity : AppCompatActivity(), OnItemSelectedListener {
|
|||
override fun onNothingSelected(p0: AdapterView<*>?) {
|
||||
|
||||
}
|
||||
|
||||
private fun showPickerDialog() {
|
||||
val datePicker = DatePickerFragment{day, month, year -> obtenerFechaSeleccionada(day, month, year)}
|
||||
datePicker.show(supportFragmentManager,"datePicker")
|
||||
}
|
||||
|
||||
private fun obtenerFechaSeleccionada (day: Int, month: Int, year: Int) {
|
||||
binding.tvFecha.text = "$day/$month/$year"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
package com.terratenientes.medicalhealth.utilidad
|
||||
|
||||
import android.app.DatePickerDialog
|
||||
import android.app.Dialog
|
||||
import android.content.Context
|
||||
import android.os.Bundle
|
||||
import android.widget.DatePicker
|
||||
import androidx.fragment.app.DialogFragment
|
||||
import java.util.Calendar
|
||||
|
||||
class DatePickerFragment (val listener: (day: Int, month: Int, year: Int) -> Unit): DialogFragment(), DatePickerDialog.OnDateSetListener {
|
||||
override fun onDateSet(view: DatePicker?, year: Int, month: Int, dayOfMonth: Int) {
|
||||
listener(dayOfMonth, month, year)
|
||||
}
|
||||
|
||||
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
||||
val c: Calendar = Calendar.getInstance()
|
||||
val day: Int = c.get(Calendar.DAY_OF_MONTH)
|
||||
val month: Int = c.get(Calendar.MONTH)
|
||||
val year: Int = c.get(Calendar.YEAR)
|
||||
return DatePickerDialog(activity as Context, this@DatePickerFragment, year, month, day)
|
||||
}
|
||||
}
|
|
@ -51,15 +51,36 @@
|
|||
android:hint="@string/receta_medicamento"
|
||||
android:layout_gravity="center_horizontal"
|
||||
/>
|
||||
<EditText
|
||||
android:id="@+id/et_fecha"
|
||||
android:layout_marginTop="10dp"
|
||||
<GridLayout
|
||||
android:layout_width="300dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/receta_fecha_paciente"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:inputType="date"
|
||||
/>
|
||||
android:layout_gravity="center"
|
||||
android:columnCount="2"
|
||||
android:rowCount="1">
|
||||
<TextView
|
||||
android:id="@+id/tv_fecha"
|
||||
android:layout_marginTop="10dp"
|
||||
android:layout_width="200dp"
|
||||
android:layout_height="match_parent"
|
||||
android:hint="@string/receta_fecha_paciente"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:textSize="20sp"
|
||||
android:inputType="date"
|
||||
android:layout_columnWeight="0"
|
||||
android:layout_column="0"
|
||||
android:layout_row="0"/>
|
||||
<TextView
|
||||
android:id="@+id/tv_datepicker"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_width="100dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:textColor="@color/primaryColor"
|
||||
android:text="calendario"
|
||||
android:textSize="20sp"
|
||||
android:layout_columnWeight="1"
|
||||
android:layout_column="1"
|
||||
android:layout_row="0"/>
|
||||
</GridLayout>
|
||||
<EditText
|
||||
android:id="@+id/et_dosis_medicamento"
|
||||
android:layout_marginTop="10dp"
|
||||
|
|
Loading…
Reference in New Issue