我在Android中使用Realm进行本地存储。我收到了以下响应表单服务器。
[{
"ListId": 10,
"Names": ["Name1", "Name2", "Name3", "Name4"]
}]
这是我的模特
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;
}
}
我正在为ArrayList
获取此信息输入参数&#39; java.lang.String&#39;不在其范围内;应该扩展&#39; io.realm.RealmObject&#39;。
感谢。
答案 0 :(得分:14)
RealmLists还不支持简单的字符串。所以你必须将每个String包装到它自己的对象中:
您可以在此处查看解决方法:Gson deserialization of List<String> into realmList<RealmString>
答案 1 :(得分:6)
Realm 4.0.0版将添加对RealmList的支持,它可以包含String,byte [],Boolean,Long,Integer,Short,Byte,Double,Float和Date值。
请参阅此拉取请求:
https://github.com/realm/realm-java/pull/5031
领域变更日志:
https://github.com/realm/realm-java/blob/master/CHANGELOG.md
答案 2 :(得分:1)
是的,它是来自境界的限制,你不能创建数组或字符串列表,请参考以下链接