相关疑难解决方法(0)

Gson将List <String>反序列化为realmList <RealmString>

我正在使用gson进行改造,将我的json反序列化为领域对象.这在大多数情况下都非常有效.处理时遇到麻烦

RealmList(String(或任何其他基本数据类型))

由于Realm不支持RealmList,其中E不扩展Realm对象,我将String包装在RealmObject中.

public class RealmString extends RealmObject {
  private String val;

  public String getValue() {
    return val;
  }

  public void setValue(String value) {
    this.val = value;
  }
}
Run Code Online (Sandbox Code Playgroud)

我的领域对象如下

    public class RealmPerson extends RealmObject {
    @PrimaryKey
    private String userId;
    ...
    private RealmList<RealmString> stringStuff;
    private RealmList<SimpleRealmObj> otherStuff;

    <setters and getters>
   }
Run Code Online (Sandbox Code Playgroud)

SimpleRealmObj工作正常,因为它只有String元素

    public class SimpleRealmObj extends RealmObject {
    private String foo;
    private String bar;
       ...
    }
Run Code Online (Sandbox Code Playgroud)

如何反序列化stringStuff?我尝试使用gson TypeAdapter

public class RealmPersonAdapter extends TypeAdapter<RealmPerson> {
    @Override
    public void write(JsonWriter out, RealmPerson …
Run Code Online (Sandbox Code Playgroud)

java android realm gson

25
推荐指数
2
解决办法
2万
查看次数

Android RealmList <Integer>和RealmList <String>

我正在与Realm合作,用Realm创建我的Android应用程序的ORM.问题是,当我尝试创建这样的对象时:

public class Airport extends RealmObject {
    private int Id;
    private String Name;
    private String Code;
    private RealmList<Integer> destinations;
}
Run Code Online (Sandbox Code Playgroud)

androidStudio告诉我,我不能拥有类型为Integer的RealmList; 并且对于String类型也是.我一直在寻找一些类似的问题,但最好的方法是声明一个像这样的对象:

public class MyRealmInteger extends RealmObject {
    private int destination;
}
Run Code Online (Sandbox Code Playgroud)

所以这样我可以按如下方式重写我的课程:

public class Airport extends RealmObject {
    private int Id;
    private String Name;
    private String Code;
    private RealmList<MyRealmInteger> destinations;
}
Run Code Online (Sandbox Code Playgroud)

但我觉得这很复杂.没有其他更简单的解决方案?

java android realm realm-list

8
推荐指数
1
解决办法
5375
查看次数

标签 统计

android ×2

java ×2

realm ×2

gson ×1

realm-list ×1