Der Wert des Android-Schiebereglers liegt außerhalb des zulässigen Bereichs
Posted: 17 Jan 2025, 09:39
Ich habe folgenden Code:
Es ist nur ein einfacher Schieberegler, der verwendet wird, um einen Wert für die Anwendung festzulegen. Der Schieberegler sieht so aus:
Es funktioniert gut, es wurde auf Tausenden von Installationen getestet. Allerdings gab es einige Zeit lang dieses seltsame Problem auf Transsion Tecno-Geräten:
Fatal Exception: java.lang.IllegalStateException: Slider value (107.0)
muss größer oder gleich valueFrom(0.0) und kleiner oder gleich
valueTo(100.0)
at sein com.google.android.material.slider.BaseSlider.validateValues(BaseSlider.java:621)...
Ich habe diese valueFrom eingegeben und valueTo-Attribute zu Slider hinzugefügt, wie Sie sehen können, aber das Problem tritt weiterhin auf. Es scheint ein schwerer Absturz zu sein, die App funktioniert auf diesen Geräten nicht mehr. Kann mir jemand einen Rat geben, wie man dieses Problem lösen kann? Ich besitze kein solches Telefon. Vielen Dank.
Code: Select all
private fun initSlider() {
binding.sSlider.addOnChangeListener { _, value: Float, _ ->
if (!value.isNaN()) {
viewModel.setValueFromSlider(value.roundToInt())
}
}
viewModel.sliderProgress.observe(viewLifecycleOwner) {
binding.sSlider.value = it?.toFloat() ?: 0f
}
}
Code: Select all
Fatal Exception: java.lang.IllegalStateException: Slider value (107.0)
muss größer oder gleich valueFrom(0.0) und kleiner oder gleich
valueTo(100.0)
at sein com.google.android.material.slider.BaseSlider.validateValues(BaseSlider.java:621)...
Ich habe diese valueFrom eingegeben und valueTo-Attribute zu Slider hinzugefügt, wie Sie sehen können, aber das Problem tritt weiterhin auf. Es scheint ein schwerer Absturz zu sein, die App funktioniert auf diesen Geräten nicht mehr. Kann mir jemand einen Rat geben, wie man dieses Problem lösen kann? Ich besitze kein solches Telefon. Vielen Dank.