如何使用 android 数据绑定从 RealmList 中获取项目
How to get an item from a RealmList using android databinding
我有一辆汽车 class 是这样实现的:
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;
}
}
在我尝试像这样从我的布局访问我的汽车详细信息时:
<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
无法生成数据绑定 classes
从错误中捕获:
看到你的错误日志截图显示了实际问题
Your error: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for rx.Observable not found
修复:
这可以通过将 RxJava 添加到您的项目或创建一个如下所示的空虚拟文件来解决。
package rx;
public class Observable {
// Dummy class required for Jackson-Databind support if
// RxJava is not a project dependency.
}
参考:
我有一辆汽车 class 是这样实现的:
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;
}
}
在我尝试像这样从我的布局访问我的汽车详细信息时:
<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
无法生成数据绑定 classes
从错误中捕获:
看到你的错误日志截图显示了实际问题
Your error: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for rx.Observable not found
修复:
这可以通过将 RxJava 添加到您的项目或创建一个如下所示的空虚拟文件来解决。
package rx;
public class Observable {
// Dummy class required for Jackson-Databind support if
// RxJava is not a project dependency.
}
参考: