RealmList of String Type in Android

最后都变了- 提交于 2019-12-06 18:31:19

问题


I'm using Realm for Local storage in Android. I'm getting following response form server.

[{
    "ListId": 10,
    "Names": ["Name1", "Name2", "Name3", "Name4"]
}]

Here is my Model

   public class Model extends RealmObject {

    private int ListId;
    private RealmList<String> Names = new RealmList<String>()

    public int getListId() {
        return ListId;
    }

    public void setListId(int listId) {
        ListId = listId;
    }

    public RealmList<String> getNames() {
        return Names;
    }

    public void setNames(RealmList<String> names) {
        Names = names;
    }

}

And I'm getting this for ArrayList

Type parameter 'java.lang.String' is not within its bound; should extend 'io.realm.RealmObject'.

Thanks.


回答1:


Realm version 4.0.0 will add support for RealmList that can contain String, byte[], Boolean, Long, Integer, Short, Byte, Double, Float and Date values.

Please refer to this pull request:

https://github.com/realm/realm-java/pull/5031

And the realm changelog:

https://github.com/realm/realm-java/blob/master/CHANGELOG.md




回答2:


RealmLists doesn't support simple strings yet. so you have to wrap each String into its own object:

You can see a work-around here: Gson deserialization of List<String> into realmList<RealmString>

or here: https://realm.io/docs/java/latest/#primitive-lists




回答3:


yes it is limitation from realm, you can't create array or list of strings, Please refer to the following link

https://github.com/realm/realm-java/issues/575



来源:https://stackoverflow.com/questions/35432842/realmlist-of-string-type-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!