我在获取所有POJO和所有设置时遇到问题,因此它无法正确解析我的JSON。
我是Android开发的新手,因此修复可能很简单。
我能够在没有Realm的情况下使它正常工作。我认为修改了我的POJO来扩展RealmObject。我的问题是我的人际关系。我的数据已经设置好,所以我有一个WorkOrder类和一个WorkOrderItem类。一个WorkOrder包含许多WorkOrderItems。没有领域,我在POJO中将其定义为
private List<WorkOrderItem> workOrderItems = new ArrayList<WorkOrderItem>();
当我修改它以扩展RealmObject时,我开始遇到问题。我努力了
private RealmList<WorkOrderItem> workOrderItems;
以及
private RealmList<WorkOrderItem> workOrderItems = new RealmList<WorkOrderItem>();
无论哪种方式,我都会继续收到以下错误:
Error:(831, 82) error: incompatible types: List<WorkOrderItem> cannot be converted to RealmList<WorkOrderItem>
我已经按照文档中的建议设置了GsonConverter。
我已经阅读了所有文档以及可以在网上找到的所有内容,但仍未找到解决方案。任何帮助,将不胜感激。
最佳答案
在请求回调时,您可能会得到一个List <WorkOrderItem>
因此,我认为您需要从列表中创建Realmlist <WorkOrderItem>
。
您需要有两个对象WorkOrderItem
和其他WorkOrderItemRealm extends RealmObject
例如 :
List<WorkOrderItem> mWorkOrderList...
RealmList<WorkOrderItem> mRealmList... //WorkOrderItem need to be a RealmObject
...new Callback<List<WorkOrderItem> mWorkOrderList>() {
@Override
public void success(List<WorkOrderItem> mWorkOrderList, Response response) {
for(WorkOrderItem mWorkOrderItem : mWorkOrderList){
//create WorkOrderItemRealm
WorkOrderItemRealm mWorkOrderItemRealm = realm.createObject(WorkOrderItemRealm.class);
//mWorkOrderItemRealm.set...(mWorkOrderItem.get...());
mRealmList.add(WorkOrderItemRealm);
}
}
@Override
public void failure(RetrofitError error) {
}
});
关于java - Android Realm Retrofit关系错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29056606/