ползунок привязки данных в xml - PullRequest
0 голосов
/ 27 января 2020

Я занимаюсь разработкой приложения с использованием MVVM и успешно смог добавить простые элементы пользовательского интерфейса, такие как кнопка и ввод текста, но сейчас я пытаюсь выяснить, как связать ползунок материала .

Я читал о привязках слушателя , и хотя xml с первого взгляда позволил мне добавить следующее приложение: onChange, напоминающее addOnChangeListener, который вы увидите в моем классе «просмотр активности» (который будет работать с addOnChangeListener внутри файла kotlin, но я не могу заставить его работать с тегом direct app: onChange внутри файла xml.

Любой совет или примеры кода, чтобы указать мне в правильном направлении, будет принята с благодарностью. Спасибо.

/ * xml файл макета * /

<com.google.android.material.slider.Slider
android:id="@+id/material_slider_min_temperature"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:valueFrom="1"
android:valueTo="2"
android:stepSize="1"
app:onChange="@{(slider, value, fromUser)-> mViewModel.fireSliderMinRQ(slider,value,fromUser)}"/>

/ * посмотреть модель * /

fun fireSliderMinRQ(slider: Slider, value: Float, fromUser: Boolean){
 //this will not bind correctly, i can't compile and access the parameters 
}

/ * просмотреть активность * /

this.mSliderMinTemperature!!.addOnChangeListener { slider, value, fromUser ->
 this.mTvMinTemperature.text = value.toInt().toString()
  slider.setOnTouchListener { v, event ->
   when(event.action){
    MotionEvent.ACTION_UP -> {
    this.mSliderMaxTemperature!!.isEnabled = true
   }
  }
  false
 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...