working with material datepicker.

This commit is contained in:
sockenklaus
2022-07-13 15:54:03 +02:00
parent fad9826d5d
commit 245710dd35
2 changed files with 22 additions and 14 deletions

View File

@@ -6,13 +6,11 @@ import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.google.android.material.datepicker.MaterialDatePicker
import com.sockenklaus.batterytracker.databinding.FragmentAddChargeBinding
import com.sockenklaus.batterytracker.R
import java.text.DateFormat
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.time.format.FormatStyle
import java.util.*
class AddChargeFragment : Fragment() {
@@ -25,14 +23,16 @@ class AddChargeFragment : Fragment() {
private val binding get() = _binding!!
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
): View {
_binding = FragmentAddChargeBinding.inflate(inflater, container, false)
viewModel = ViewModelProvider(this)[AddChargeViewModel::class.java]
val current = LocalDate.now()
val formatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT)
val formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy")
val formatted = current.format(formatter) ?: ""
binding.editDate.setText(formatted)
@@ -41,14 +41,11 @@ class AddChargeFragment : Fragment() {
buttonClicked()
}
return binding.root
binding.editDate.setOnClickListener {
openDatePicker()
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
viewModel = ViewModelProvider(this)[AddChargeViewModel::class.java]
// TODO: Use the ViewModel
return binding.root
}
private fun buttonClicked() {
@@ -60,4 +57,15 @@ class AddChargeFragment : Fragment() {
_binding = null
}
private fun openDatePicker() {
println("Clicked edit Field")
val datePicker = MaterialDatePicker.Builder.datePicker()
.setTitleText("Select date")
.setSelection(MaterialDatePicker.todayInUtcMilliseconds())
.build()
datePicker.show(parentFragmentManager, "test")
}
}

View File

@@ -21,7 +21,7 @@
app:layout_constraintStart_toEndOf="@+id/text_battery_id"
app:layout_constraintTop_toTopOf="parent" />
<EditText
<Button
android:id="@+id/edit_date"
android:layout_width="0dp"
android:layout_height="wrap_content"
@@ -29,8 +29,8 @@
android:layout_marginEnd="24dp"
android:ems="10"
android:hint="Date"
android:inputType="text"
android:minHeight="48dp"
style="@style/Widget.MaterialComponents.Button.TextButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/edit_battery_id"
app:layout_constraintTop_toBottomOf="@+id/edit_battery_id" />