如何通过数据绑定传递NumberPicker值(onValueChange)?

时间:2018-01-21 14:43:55

标签: android android-databinding numberpicker

Android号码选择器具有:onValueChange(NumberPicker picker, int oldVal, int newVal)

如何通过数据绑定将这些参数(NumberPicker选择器,int oldVal,int newVal)传递给我的viewmodel?

<data>
    <import type="android.view.View" />
    <variable name="vm" type="com.my.view.model.MainActivityVM" />
</data>
/* ... bla ...*/
<NumberPicker
    android:onValueChange="@{() -> vm.callMethod(/*???whats here???*/)}" />

我希望每次更改时都会在视图模型中捕获新值。

2 个答案:

答案 0 :(得分:3)

像这样:

ViewModel

我选择让device.Location.position 类的签名只使用旧值和新值,而不是NumberPicker。这取决于你。

答案 1 :(得分:0)

您还可以像使用其他任何本机适应视图一样使用双向数据绑定。

<NumberPicker
    android:value="@={vm.observableIntVariable}"
    />

别忘了通常的two-way requirements