Android架构组件
我正在为我的应用程序使用MVVM android体系结构 我想实现点击事件,那么,我们需要使用数据绑定体系结构组件,还是只需要使用活动来处理点击事件和验证用户输入Android架构组件,android,android-architecture-components,android-event,android-mvvm,Android,Android Architecture Components,Android Event,Android Mvvm,我正在为我的应用程序使用MVVM android体系结构 我想实现点击事件,那么,我们需要使用数据绑定体系结构组件,还是只需要使用活动来处理点击事件和验证用户输入 实现这一点的最佳方法是什么?问题在于是否使用数据绑定。以下是数据绑定的一些优点和缺点: 优点: 使代码超级干净 使代码更短 易于测试 缺点: 有时很难调试 它有点重,增加了编译时间 但是。。。既然Google已经宣布它是Android架构组件的一部分,我相信你应该使用它 实现这一点的最佳方式是什么 我不知道您对数据绑定有多熟悉,但您应
实现这一点的最佳方法是什么?问题在于是否使用
数据绑定。以下是数据绑定的一些优点和缺点:
优点:
使代码超级干净
使代码更短
易于测试
缺点:
有时很难调试
它有点重,增加了编译时间
但是。。。既然Google
已经宣布它是Android架构组件的一部分,我相信你应该使用它
实现这一点的最佳方式是什么
我不知道您对数据绑定有多熟悉,但您应该知道一些,在onClick
中,您将不需要它。只需在XML文件中添加android:onClick
属性。您还可以找到以下代码实验室来正确实现它:
例如:
首先,确保在build.gradle
android {
...
dataBinding {
enabled true
}
}
之后,转到布局,您将使用数据绑定(为此,请确保它是一个活动/片段),只需在
然后,定义类型,例如ViewModel
及其名称。在将使用单击功能的视图中,添加我上面所说的内容。(android:onClick=“@{()->viewmodel.onLike()}”
)
你还没做完。您需要以某种方式将您的逻辑连接到该数据绑定,因此请转到活动/片段的Java/Kotlin代码,然后:
将setContentView(R.layout.some\u活动)
替换为val绑定:SomeActivityBinding=
DataBindingUtil.setContentView(这个,R.layout.some_活动)
请注意,SomeActivityBinding
将由IDE本身提供,因为它是根据xml命名在Databinding
库中处理的
这是最基本的。祝你好运 我很高兴我帮了忙。