From 25382f8c3d2026c128bafcfd439c5309fe951a57 Mon Sep 17 00:00:00 2001 From: Mohamed Metwalli <mohamed.metwalli@sap.com> Date: Mon, 17 May 2021 16:05:57 +0200 Subject: [PATCH] Update DurationPicker.kt (#3190) Co-authored-by: Juraj Kusnier <jurajkusnier@users.noreply.github.com> --- .../ui/durationpicker/DurationPicker.kt | 22 ++++++++----------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/durationpicker/DurationPicker.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/durationpicker/DurationPicker.kt index 09299192e..69a59f987 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/durationpicker/DurationPicker.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/durationpicker/DurationPicker.kt @@ -1,18 +1,18 @@ package de.rki.coronawarnapp.ui.durationpicker import android.os.Bundle -import android.view.LayoutInflater import android.view.View -import android.view.ViewGroup import androidx.annotation.IntRange import androidx.fragment.app.DialogFragment +import de.rki.coronawarnapp.R import de.rki.coronawarnapp.databinding.DurationPickerBinding +import de.rki.coronawarnapp.util.ui.viewBindingLazy import org.joda.time.Duration import org.joda.time.format.PeriodFormatter import org.joda.time.format.PeriodFormatterBuilder import kotlin.math.max -class DurationPicker : DialogFragment() { +class DurationPicker : DialogFragment(R.layout.duration_picker) { fun interface OnChangeListener { fun onChange(duration: Duration) @@ -23,32 +23,28 @@ class DurationPicker : DialogFragment() { private val title by lazy { requireArguments().getString(TITLE_KEY).orEmpty() } private val minutesArray by lazy { requireArguments().getStringArray(MINUTES_KEY).orEmpty() } - private val binding: Lazy<DurationPickerBinding> = lazy { DurationPickerBinding.inflate(layoutInflater) } - - override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { - return binding.value.root - } + private val binding: DurationPickerBinding by viewBindingLazy() override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - with(binding.value.hours) { + with(binding.hours) { minValue = 0 maxValue = hoursArray.size - 1 displayedValues = hoursArray } - with(binding.value.minutes) { + with(binding.minutes) { minValue = 0 maxValue = minutesArray.size - 1 displayedValues = minutesArray } - with(binding.value.title) { + with(binding.title) { text = title } - with(binding.value) { + with(binding) { var duration = requireArguments().getString(DURATION_KEY)!!.split(":").toTypedArray() if (duration.size < 2) duration = arrayOf("00", "00") @@ -68,7 +64,7 @@ class DurationPicker : DialogFragment() { } private fun getDuration(): Duration { - val durationString = hoursArray[binding.value.hours.value] + ":" + minutesArray[binding.value.minutes.value] + val durationString = hoursArray[binding.hours.value] + ":" + minutesArray[binding.minutes.value] val formatter: PeriodFormatter = PeriodFormatterBuilder() .appendHours() .appendLiteral(":") -- GitLab