I créé minuterie (java.util.Timer) en Kotlin ainsi:se bloque avec minuterie KotlinNullPointerException intérieur fragment
override fun onViewCreated(view: View?, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
buttonStart.setOnClickListener({
val timer = Timer("schedule", true)
timer.scheduleAtFixedRate(1000, 1000) {
if (timerViewModel?.timerValue?.value!! > 0){
timerViewModel?.timerValue?.value = timerViewModel?.timerValue?.value!! - 1
activity.runOnUiThread { textViewTimer.text = timerViewModel?.timerValue?.value?.toString() }
} else {
cancel()
}
}
})
}
Ce code se bloque sur la ligne 5 avec l'erreur:
kotlin.KotlinNullPointerException
at com.dmitry.timer.views.TimerFragment$onViewCreated$1$$special$$inlined$scheduleAtFixedRate$1.run(Timer.kt:145)
at java.util.Timer$TimerImpl.run(Timer.java:284)
Quand je créer minuterie à l'intérieur activity
- cela fonctionne bien. Quel est le problème?
vous avez raison. L'erreur était à l'intérieur de lambda. Le béguin semble vraiment confus :(merci – Rainmaker