gpt4 book ai didi

android - 使用来自 2 个不同布局的相同 Android 绑定(bind)类

转载 作者:行者123 更新时间:2023-12-04 23:39:16 25 4
gpt4 key购买 nike

我正在尝试使用 Android 的数据绑定(bind)以两种不同的布局显示来自同一类的数据。布局用于扩充 ListView 中的 View 。 .我已经有它的功能,我希望使用相同的适配器类,因为它很容易指定要使用的布局资源。

问题出现在自动生成的数据绑定(bind)类中;因为有两个布局文件,所以它会生成其中两个,比如说,LayoutOneBindingLayoutTwoBinding ,当我使用
DataBindingUtil.bind(inflatedView)
我得到了两者之一,它们没有共同的父类(super class),我可以将结果分配给并且仍然能够使用包含的数据。那么,有没有办法在两个不同的布局中重用数据绑定(bind)类呢?

每个布局文件都有一个单独的 <variable> , 但它的名称相同并且包含相同类型的数据。

最佳答案

有一种方法可以重用绑定(bind),以防两个绑定(bind)中的变量名相同。每个数据绑定(bind)都扩展 ViewDataBinding .因此,您有一个可以接受的父类(super class)。
这里不能直接设置dataBinding.variable1 = someValue这样的变量.但是,还有另一种方法,即使用 #setVariable功能。
因此,在您的适配器中,您的代码将如下所示:

dataBinding.setVariable(BR.variable1, someValue)
引用: https://www.vogella.com/tutorials/AndroidDatabinding/article.html#implement-the-recyclerview-with-data-binding

关于android - 使用来自 2 个不同布局的相同 Android 绑定(bind)类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38384982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com