问题标签 [android-binding-adapter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
416 浏览

android - 通过 Data-Binding API 设置一个众所周知的属性值

我有一个来自自定义视图定义行的自定义属性:

Android Studio 检测到这一点并为我提供了一个自动完成功能,这很棒。所以 xml 属性看起来像app:order="byValue". 但是,由于我想使用BindingAdapter数据绑定 API 中的 a ,因此我需要将它与这样的@符号一起使用:app:order="@{byValue}",不幸的是这无法编译。

然后我尝试使用一个我在内部使用的常量,就像这样:app:order="@{com.example.views.ExampleView.ORDER_BY_VALUE}",但这也不能编译。我可以使用app:order="@{0}", 确定这行得通,因为它是这样定义的,但是我在0那里使用它并不直观。

知道如何编写更具可读性的代码来解决此问题吗?

0 投票
2 回答
778 浏览

android - 创建复选框运行时并使用 DataBinding 获取值

目前我DataBinding在我的应用程序中使用它,它就像魅力一样工作。现在我有一个问题,我们可以根据 API 响应创建多个复选框吗?

就像ArrayList我的模型类中有一个,无论该数组列表的大小是多少,都应该添加很多复选框。

现在我想创建所有爱好的复选框,并想检索选定复选框的值。

谁能帮我这个?

我为此创建了 BindingAdapter,并且能够创建复选框运行时

现在的问题是如何获取选定的复选框值。

注意:需要用 DataBinding 来实现。

0 投票
1 回答
742 浏览

android-layout - 有什么方法可以使用 Lombok 访问器进行 Android 绑定?

我开始玩 Android 绑定。标准(单向)绑定对于与我一起出去玩的人来说已经足够好了。

但是,我发现我不能毫无错误地使用 Lombok 访问器Could not find accessor。你有没有找到解决这个问题的方法,避免像某种对 Lombok 无知的洞穴野兽那样手动编写 getter 和 setter?

对于后代,我的原始示例代码使用了一个布尔值,这使问题有点模糊:

0 投票
1 回答
913 浏览

android - android绑定应用程序中的自定义事件属性:onMyEvent

有没有办法onSomeEventListener使用绑定库将自定义连接到属性?提供的例子onClick很简单,都使用'on'前缀和单方法接口监听器,那么'add'前缀和更复杂的场景呢?

想象一下,我想在RecyclerView.addOnItemTouchListener上使用自定义连线逻辑,确定从SimpleOnItemTouchListener.onTouchEvent触摸子视图并将其传递给我的视图模型,我该如何实现?

我想结束这样的事情:

在使用 BindingAdapter 和InverseBindingListener通知绑定框架有关您的自定义属性更新时,是否有类似的方法?

0 投票
2 回答
1430 浏览

android - 黄油刀中 ImageView 的 onclicklistener 不起作用

这是我的视图活页夹代码。此处的接受按钮和拒绝按钮不起作用。

接受和拒绝按钮的侦听器部分不起作用。我的代码中缺少什么。

}

有人请指导我解决这个问题。提前致谢。

这是我的片段类。

0 投票
1 回答
2445 浏览

android - Android BindingAdapter 的执行顺序?

我需要了解数据绑定库如何确定其 BindingAdapters 的执行顺序。如果我有两个用于视图的 BindingAdapter,并且如果视图具有与这些 BindingAdapter 对应的属性,它将如何确定首先执行哪个适配器?我问是因为执行顺序对我来说很重要。

我有以下 BindingAdapter/s:

以下是我如何填充 Spinner 并设置选择:

DatabaseModel.queryForAll 是一个静态方法,它查询数据库并返回一个对象列表,然后将其提供给 BindingAdapter。BindingAdapter 获取此列表,使用索引更新其每个项目并将其设置为微调器的适配器。

无论出于何种原因,总是首先调用“setSelectedItem”BindingAdapter。这是不可取的,因为我需要先初始化条目。如果它没有首先初始化,那么当第一次调用 setSelectedItem 时 spinner.getAdapter() 将为空。这意味着不会恢复之前保存的选择。

0 投票
6 回答
10473 浏览

android - 绑定适配器无法正常工作

我很难@BindingAdapter在我的项目中工作。

上面的代码显示了它是如何在我的 ViewModel 中实现的。没什么特别的。

这不起作用。命名空间应用程序未绑定。所以我错过了什么。我尝试关注 https://medium.com/google-developers/android-data-binding-custom-setters-55a25a7aea47#.6ygaiwooh 并查看他们如何设置 bindingAdapter。但是我错过了一些东西

0 投票
0 回答
634 浏览

android - Android:绑定更新 UI

在我的 android 应用程序中,我有以下类。我想在 UI 中绑定这些类,以根据对象数据显示 UI 内容。

项目信息.java

项目容器信息.java

详细视图片段

父视图片段

基本上我在 UI 中有不同的文本视图,并且相应的 UI 属性存储在对象中,如缩进、前景色、字体大小等。我如何将这些信息绑定到文本视图?

我无法使用此行查看文本,有人可以帮助我纠正下一行中的错误并使用特定标识和前景色显示文本。

android:text="@{itemContainerInformation.itemInformations[0].Caption}"

如何绑定对象并根据对象数据更新 UI?

谢谢。

0 投票
1 回答
1965 浏览

java - 注释处理第三方库

我正在为一个 Android 项目编写注释处理器并遇到了一种情况。我想处理来自库模块的注释类,即应用程序模块依赖于库模块并且需要处理来自库模块的注释类。

但是,注释处理器无法“看到”依赖项中的注释,可能是因为代码已经编译。有关另一个库的问题,请参见此处。我的项目问题的演示在这里的分支上。sample处理来自模块的注释,但来自模块的注释lib来自模块的注释不被处理。

这一切都很好,我已经放弃了没有这个功能的生活,但事实证明,Android 数据绑定库可以处理来自模块甚至第三方库的注释。例如,这个@BindingAdapter库提供了应用程序可以很好地处理的方法。

我尝试在我使用的注释上设置保留类型,但无济于事。我能看到的唯一显着区别是数据绑定处理器以方法为目标,而我的方法以类(类型)为目标,但我认为这不会对处理器产生影响。所以我认为这可能与作为 Android 插件一部分的数据绑定处理器有关,但我不确定这对这里有什么帮助。

有谁知道这是怎么做到的?

0 投票
0 回答
1041 浏览

android - Android 数据绑定 - 将 BindingAdapter 与“android”命名空间一起使用不起作用

在 Android 的数据绑定文档中,它说

您还可以为 android 命名空间编写适配器。

我按照该文档中的示例代码并尝试绑定到 TextView 的android:text设置器。

这是我写的 BinderAdapter:

这是布局:

当我运行应用程序时,我希望看到文本“这是虚拟文本 - BinderAdapter 有效!”,但是,我看到的文本是“这是虚拟文本”。此外,查看日志我没有看到setText()被调用。

我阅读了(这里)关于使用“android”以外的命名空间的建议,但是,对我来说重要的是,我不需要特别注意并在我的应用程序中放置不同的命名空间。

我究竟做错了什么?