gpt4 book ai didi

android - 在android中使用数据绑定(bind)时出错

转载 作者:IT老高 更新时间:2023-10-28 21:43:50 24 4
gpt4 key购买 nike

我正在尝试按照指南 here 中的说明测试数据绑定(bind)。 .我已将其包含在我的 build.gradle 文件(模块应用程序)中:

compileSdkVersion 'android-MNC'
buildToolsVersion '23.0.0 rc2'

在项目 build.gradle 文件中,我已将其包含在我的依赖项中:

classpath "com.android.tools.build:gradle:1.3.0-beta2"
classpath "com.android.databinding:dataBinder:1.0-rc0"

布局文件与指南中给出的完全相同。

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable name="user" type="com.example.User"/>
</data>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.firstName}"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.lastName}"/>
</LinearLayout>
</layout>

最初它给出了一个错误元素布局没有所需的属性layout_width和layout_height

我试图通过将 match_parent 分配给两者来修复它。然后我得到了错误Error parsing XML: duplicate attribute 在我将 layout_heightlayout_width 分配给线性布局的行上。

我再次尝试通过删除这些属性来解决此问题。现在每次我尝试编译时,我都会看到 - error: package my.package.name.databinding 不存在。

代码完成在我尝试使用此布局的 fragment 中完美运行。

那么我错过了什么?

最佳答案

您在 xml 文件中的绑定(bind)可能无效。

请务必仔细检查

  1. type 属性是对数据对象的有效引用吗? type="my.package.Class"
  2. 绑定(bind)有效吗? name="client" -> "@{client.field}"
  3. 是否可以访问数据字段? public或用getter封装
  4. java中的字段名是否与xml文件匹配,检查是否有错别字
  5. 如果您重命名了 xml 文件,请确保您还更新了 Binding 对象。 OldNameBinding -> NewNameBinding
  6. 清洁项目

关于android - 在android中使用数据绑定(bind)时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30795682/

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