【问题标题】:How to get an item from a RealmList using android databinding如何使用 android 数据绑定从 RealmList 中获取项目
【发布时间】:2017-09-04 10:09:20
【问题描述】:

我有一个这样实现的汽车类:

        public class Car extends RealmObject implements Serializable {
       @SerializedName("car_details")
        @Expose
        private RealmList<CarDetail> carDetails = null;
  public RealmList<CarDetail> getCarDetails() {
        return carDetails;
    }

    public void setCarDetails(RealmList<CarDetail> carDetails) {
        this.carDetails = carDetails;
    }
    }

在我试图从我的布局中访问我的 carDetails 时:

<TextView
                                                      android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_margin="8dp"
                            android:text="@{car.carDetails.get(0).grade}"
                            android:textAllCaps="true"
                            android:textColor="@color/black"
                            android:textSize="30sp"
                            android:textStyle="bold" />

但我在编译时遇到错误,有什么建议可以访问该列表吗?

我也试过:

android:text="@{car.carDetails[0].grade}"

我收到这样的错误:

error: package me.test.databinding does not exist

无法生成数据绑定类

从错误中捕获:

【问题讨论】:

  • 您遇到的错误是什么?
  • @AyushKhare 错误:(14, 39) 错误:包 me.sample.test.databinding 不存在
  • 请发布整个错误日志
  • 整个错误就是这样,根本无法生成数据绑定,因为我从RealmList中获取单个项目的代码是错误的,如果您知道如何从数据绑定代码中的列表中获取特定项目请告诉我

标签: java android realm android-databinding realm-list


【解决方案1】:

看到你的错误日志截图显示了实际问题

您的错误: com.sun.tools.javac.code.Symbol$CompletionFailure: rx.Observable 的类文件未找到

修复:

可以通过将 RxJava 添加到您的项目或创建一个如下所示的空虚拟文件来解决此问题。

package rx;

public class Observable {
    // Dummy class required for Jackson-Databind support if
   // RxJava is not a project dependency.
}

参考:

thisthisthis

【讨论】:

  • 它与这个虚拟类一起工作,知道我在这个项目中使用 RxJava2,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-04-22
  • 2019-07-06
  • 1970-01-01
  • 2012-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多