问题标签 [android-databinding]

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 投票
2 回答
1885 浏览

android - 在 gradle 中添加 espresso-contrib 库后,Espresso 测试未运行

当我添加

在 gradle 中并运行 Espresso 测试,我收到以下错误:

并且测试没有运行。我怀疑是 gradle 问题所以这是我的应用程序 gradle 文件:

我需要添加

所以我可以用 RecyclerView 进行测试。

0 投票
3 回答
28492 浏览

android-databinding - Android 数据绑定:如何传递变量以包含布局

谷歌文档说变量可能会从包含布局传递到包含布局的绑定中,但我无法使其工作,但得到数据绑定错误****msg:标识符必须具有来自 XML 文件的用户定义类型。处理程序缺少它。包含的 XML 如下所示:

并且包含的​​ XML 是这样的:

我可以通过生成的绑定类从包含的布局中引用视图,但传递变量不起作用。

0 投票
2 回答
7586 浏览

android - 将内存中的位图数据绑定到 ImageView

我有一个内存中的位图(通过专有的 TCP/IP 协议栈从服务器应用程序下载),我想将其绑定到 ImageView。但是,我可以使用 setImageBitmap 手动绑定图像;如果我使用数据绑定库绑定其他控件,图像不会显示。如何使用数据绑定库绑定到包含 Bitmap 对象的属性?

0 投票
3 回答
8304 浏览

android - Android setVariable(BR.xyz, model) 和 databinding.setXYZ(model) 有什么区别

我正在研究 android 数据绑定,并遇到了我们可以使用以下两种方式设置模型的场景:

我们也可以设置如下:

谁能解释一下这两者之间有什么区别?

用户模型:

0 投票
3 回答
23436 浏览

android - Android DataBinding Custom Binding Adapter Warning

I followed the data binding documentation for Custom Binding Adapter for image loading from official Android Developers site: http://developer.android.com/tools/data-binding/guide.html

After successfully compiling the code I get a warning which is:

My Code is as follow:

Why this warning is generated?

A screenshot is also attached...enter image description here

0 投票
4 回答
2743 浏览

android - Android Studio 1.5.1 + 数据绑定:IDE 中的错误消息

我正在为 Android Studio 中的 Android 数据绑定而苦苦挣扎。我在 IDE 中收到两条错误消息,但我不知道如何解决这些错误:Cannot resolve symbol 'BR'Cannot resolve symbol @{data.visible ? View.VISIBLE : View.GONE}.

这就是我所做的:

  • 使用Android SDK Manager安装Android Support Repository (Rev. 25)
  • 在Android Studio 1.5.1中创建了一个新项目:
    • 应用程序名称DataBindingTest(域my.namespace、包namespace.my.databindingtest
    • 对于手机和平板电脑,最低 SDK 版本 9,目标 SDK 版本 23
    • 添加了一个空活动
  • 添加dataBinding { enabled = true }到应用程序模块的build.gradle文件中(并进行了 gradle 同步)
  • 添加了一个Data扩展BaseObservable并具有属性text(String) 和visible(Boolean)的类
  • 已更改activity_main.xml:包装在layout标签中,添加了data部分并使用了data.textdata.visible属性。
  • MainActivity向类添加了初始化代码

这是更改文件的代码:

build.gradle(模块:app):

Data.java(包namespace.my.databindingtest):

activity_main.xml(资源/布局):

MainActivity.java(包namespace.my.databindingtest):

这些是IDE中的错误:

Data.java文件中,BR以红色突出显示并带有提示Cannot resolve symbol 'BR'

截图数据.java

activity_main.xml文件中,@{data.visible ? View.VISIBLE : View.GONE}以红色突出显示并带有提示Cannot resolve symbol @{data.visible ? View.VISIBLE : View.GONE}

在此处输入图像描述

到目前为止我尝试了什么:

  • 文件>使缓存无效/重新启动...
  • 构建>清理项目
  • 谷歌搜索,玩弄代码......

那么我该如何解决这些错误呢?

0 投票
1 回答
355 浏览

android - Android Instrumentation 测试 dexing 错误

我正在尝试使用 Espresso 进行一些仪器测试,但是当我编译我的测试时,gradle make 返回一个错误:

Error:Gradle: Error convert bytecode to dex: Cause: com.android.dex.DexException: Multiple dex files defined Landroid/databinding/DataBindingComponent;

我假设存在一些依赖错误并列出了如下依赖项:
.\gradlew app:dependencies

奇怪的是:我使用的是数据绑定版本 1.0-rc4,但在列出的依赖项中有 1.0-rc3:

这个 1.0-rc3 是从哪里来的?我的整个项目中没有这样的字符串“rc3”(生成的 dex-cache 文件除外)。

UPD:
我认为这是一个 android gradle-plugin 问题,因为相同的代码适用于 gradle 1.5,但适用于 gradle 2.0.0-beta2 和 2.0.0-beta4。
UPD2:
解决了问题。
项目相对较旧,并且android-databinding插件从测试版开始从gradle 1.5.0-beta1
现在开始启用数据绑定,您应该只添加

在你的android{}部分。

因此,如果您遇到此类问题,请确保您从build.gradle文件中删除了这些字符串:
1) apply plugin: 'com.android.databinding'
2) classpath 'com.android.databinding:dataBinder:1.0-rc4'
3)apt 'com.android.databinding:compiler:1.0-rc4'

0 投票
1 回答
1673 浏览

android - DataBinding 库包含在没有变量的情况下不起作用

正如 George Mount所说 ,从 1.0-rc4 开始,我们在使用数据绑定时不再需要 include 中的变量:

按钮.xml:

主.xml:

但我试了一下,报错:

错误:(10, 31) 标识符必须具有来自 XML 文件的用户定义类型。工具栏视图模型缺少它

我有包含的工具栏:

工具栏布局是:

怎么了?

注意:我知道使用传递的变量一切正常。我试图弄清楚乔治提到的用途。

0 投票
2 回答
1059 浏览

android - Kotlin 和 Android 数据绑定 (BuildTools 2.0.0)

在我的 Android 项目中,我正在使用KotlinAndroid 数据绑定。它工作得很好,但现在我想将 android gradle 插件更新到版本 2.0.0-beta5。在构建项目时,我收到以下错误:

例外在这里

有没有人遇到过这个问题,有没有办法解决它?

0 投票
1 回答
1421 浏览

android - Android DataBinding:查看闪烁

我正在使用GridView图像项,通过 A 加载图像ndroid DataBinding technology。如果将一些新项目添加到列表并通知适配器,那么 GridView 会闪烁,为什么会出现?如果我没有使用 DataBinding 技术,那么它工作正常。