问题标签 [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 投票
1 回答
699 浏览

android - Android databindingError:解决后无法更改配置“:mobileBanking:compile”的依赖关系

我在为我的项目添加数据绑定时遇到了很多麻烦。有一个复杂的 build.gradle。不幸的是,我不能从中发布太多内容。
如果我在我的应用程序 build.gradle 文件中将数据绑定 {enabled = true} 添加到我的 android 块中,我会收到以下错误 -->

错误:解决后无法更改配置“:projectName:compile”的依赖关系。无法在空对象上获取属性“javaCompile”。

我已经在我的类路径中添加了数据绑定库。如果我不添加 dataBinding {enabled = true} 块,则构建成功并警告生成的源位于错误的文件夹中。

有任何想法吗?

0 投票
2 回答
14148 浏览

android - Android data binding is not working with attributes

I'm trying to use databinding with custom views (a possible usage George Mount showed here).

One can't imagine building compound views without <merge> tag. However, in this situation databinding fails:

MyCompoundView class:

my_compound_view.xml: by app:isGone="@{!data.isViewVisible}" i hoped to control the visibility of the whole compound view

The compiler errors:

I have all needed @BindingAdapter methods. Now I inherit the view from FrameLayout and use <RelativeLayout> instead of <merge> - and it works. But I have extra nested layout.

Question: merge attrs are ignored. Is there any way to workaround that?

Android Studio 1.5.1 stable

Gradle plugin com.android.tools.build:gradle:1.5.0

0 投票
2 回答
3789 浏览

android - Android 数据绑定:可以绑定来自 HashMap 的值

我将对象的字段(字符串、整数等)绑定到布局文件。例如:

这工作正常。但是,我HashMap在那个 appState 对象中也有一个值。

是否可以从此绑定到值,即android:text="@{appState.thehashmap['thekey']"

当前的表达式语法似乎不支持它。

但是,我想知道,有没有办法?非常感谢。

0 投票
1 回答
2054 浏览

android - 是否可以使用 BindingAdapter 直接将事件绑定到 Observable 字段?

我正在为 android-support-design 库提供的底部工作表编写绑定适配器。我想要实现的是将状态更改事件绑定到可观察字段,从而完全避免事件处理程序的粘合代码。

在布局 XML 中:

其中“bottom_sheet_state”是 ObservableInt 的一个字段。

然后编译器警告:Cannot find the setter for attribute 'bind:behavior_onStateChange' with parameter type int.似乎数据绑定编译器在匹配 BindingAdapter 时总是将 ObservableInt 字段视为 int。

我如何才能真正编写一个 BindingAdapter 来绑定事件处理程序以更改 Observable 字段,而无需视图模型类中的胶水代码?

0 投票
12 回答
33756 浏览

android - Android 数据绑定:包含标签的可见性

根据http://developer.android.com/tools/data-binding/guide.html#imports,我们可以在可见性上有这样简单的表达式:

但是当我尝试在include标签中做同样的事情时,就像这样:

然后 Studio 不仅将表达式显示为红色,而且在构建它时,自动生成的绑定类中会出现以下错误:

错误:(138, 29) 错误:找不到符号方法 setVisibility(int)

这是自动生成的绑定类中发生错误的地方

0 投票
1 回答
534 浏览

android - 为什么通过 ViewDataBinding 访问 ViewStub 时 Android Studio 构建失败?

我定义了一个包含 2 的布局ViewStubs。它们定义如下:

在我的适配器中,我试图ViewStub通过 DataBinding 库生成的 ViewDataBinding 访问 ,在我的情况下它是TitleBinding. 尝试执行以下操作会导致错误。

我收到此错误并且应用程序无法编译。

我通过将变量设置为 type 来解决它ViewStubProxy,允许它编译但给出不兼容的类型语法突出显示错误。如果可能的话,我想知道这样做的正确方法是什么。

这有效...

导致

错误截图

0 投票
1 回答
365 浏览

android - Android Studio 构建过程不会完全删除 xml 中的视图?

我正在删除 xml 布局文件中的一个元素,该元素有错误。

每次我清理和/或清理/构建时,该元素都会不断弹出回 xml 文件。

好像,我没有删除它。

Android Studio 具有自动保存功能,但每次删除元素时都会点击保存。

我什至删除了 build/intermediates 下的所有目录。

Android Studio 带来了什么?

0 投票
4 回答
15929 浏览

android - 使用 srcCompat 进行数据绑定

我在 Support Lib v23.2 中使用新的矢量可绘制支持 app:srcCompat 并尝试通过数据绑定设置其可绘制。

在尝试构建时,工作室抛出:

错误:(33, 30) 找不到参数类型为 android.graphics.drawable.Drawable 的属性“app:srcCompat”的设置器。

0 投票
1 回答
789 浏览

android-databinding - onPropertyChanged - 如何从外部类切换 propertyId

我有一个扩展 BaseObservable 的模型。我有一个视图模型,其中包含对模型的引用并订阅模型中的属性更改。如何从视图模型的回调中打开 Model.propertyId?在下面的示例中,BR.assignedId 是模型中的属性。例如:

查看模型

0 投票
1 回答
1200 浏览

java - 示例 Android 数据绑定错误

我正在尝试在我的一个 android 项目中实现数据绑定。我在网上找不到完整的工作示例,因此按照以下步骤开始:http: //developer.android.com/tools/data-binding/guide.html

我的文件中的代码如下:

build.gradle(项目)

build.gradle(模块)

MainActivity.java

main_activity.xml

用户.java

当我构建项目时,我收到错误:

****/ 数据绑定错误 ****msg:Cannot resolve type for user~ file:C:\Users\xxx\AndroidStudioProjects\AndDataBind\app\src\main\res\layout\main_activity.xml loc:11: 24 - 11:27 ****\数据绑定错误****

MainActivity.java 中的 setUser(user) 也显示错误: setUser('org.my.anddatabind.User') in '' cannot be applied to '(org.my.anddatabind.User)'