具有监听器绑定(bind)的 Android DataBinding 表达式

标签 android mvp android-databinding

我在 MVP 之后的应用程序中使用 Android 数据绑定(bind)库图案。在talk由 George Mount 和 Yigit Boyar 提供了以下用于事件处理程序的表达式示例:

<Button android:onClick="@{isAdult ? handlers.adultClick : handlers.childClick}" …/>

有没有什么方法可以使 method references 具有相同的功能(即根据条件不同的“onClick”事件)但是用listener bindings反而?或者我的方法完全错误,应该将逻辑移交给演示者?

最佳答案

来自 listener_bindings

如果您需要使用带有谓词的表达式(例如三元),您可以使用 void 作为符号。

android:onClick="@{(v) -> v.isVisible() ? doSomething() : void}"

关于具有监听器绑定(bind)的 Android DataBinding 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39642540/

相关文章:

Android 从 RGB 二维数组创建位图

java - 为什么我不能在某些类型的返回语句上设置断点?

model-view-controller - 澄清 :MVC, MVP,MVVM

android - MVP 适配器数据缓存

android - 在 MVP Koin 中注入(inject) Activity 对象

java - 如何修复此错误 : I/System. out : java. lang.ClassNotFoundException : com. mysql.jdbc.driver java.lang.NullPointerException

java - 类型不匹配 : cannot convert from String to R. 字符串

android - 使用数据绑定(bind)设置 View 可见性

java - EditText 未使用 Datepickerdialog 中选择的日期字符串进行更新

android - ViewModel 中的 ObservableField 值不会使用数据绑定(bind)更新 UI