繁体   English   中英

Android Realm Retrofit关系错误

[英]Android Realm Retrofit relationship error

我在获取所有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) {

    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM