[英]Realm data isValid() false but can get data
我使用Realm在我的项目中存储数据。 我有奇怪的问题。 我的模特:
Class Post extends RealmObject implements Serializable{
@PrimaryKey
int id;
...
RealmList<Post> subdata;
RealmList<Post> getSubdata() {
return subdata;
}
}
我经常检查getSubdata() != null && getSubdata().isValid()
来使用子数据。 问题是当我检查getSubdata().isValid()
返回false
,但我仍然在subdata
数据中获取数据。 我不检查isValid
时没关系。 文件说的像这样:
/**
* Checks if the {@link RealmList} is managed by Realm and contains valid data i.e., the {@link io.realm.Realm}
* instance hasn't been closed.
*
* @return {@code true} if still valid to use, {@code false} otherwise or if it's an unmanaged list.
*/
public boolean isValid() {
//noinspection SimplifiableIfStatement
if (realm == null || realm.isClosed()) {
return false;
}
return isAttached();
}
更新调试:
您的类需要扩展RealmObject。 所以它应该改为:
Class Post extends RealmObject {
@PrimaryKey
int id;
...
RealmList<Post> subdata;
RealmList<Post> getSubdata() {
return subdata;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.