Android - Realm如何获得价值

gon*_*250 1 java android realm android-database

我正在尝试获取我保存的值Realm,但我不知道如何操作..值始终为null ..但是当我调试代码时,值会显示为您在图片如下:

注意:BookMarkActive&idBookMark在所选行中具有适当的值但在下面没有任何显示.

在此输入图像描述

我怎样才能获得价值?

看一下与图像中相同的代码:

public String UpdateBookMarks(String id){
    Realm realm = Realm.getInstance(_context);
    RealmQuery<Bookmark> query = realm.where(Bookmark.class);
    query.equalTo("IdBookMark", id);
    Bookmark stationDetails = query.findFirst();
    if(stationDetails.getBookMarkActive() == "true"){
        stationDetails.setIdBookMark("false");
        return "Station has been removed from your bookmark list.";
    }else if (stationDetails.getBookMarkActive() == "false"){
        stationDetails.setIdBookMark("true");
        return "Station has been added to your bookmark list.";
    }
    return "Error";
}
Run Code Online (Sandbox Code Playgroud)

BookMark类:

@RealmClass
public class Bookmark extends RealmObject {
    private java.lang.String IdBookMark;
    private String BookMarkActive;

    public String getIdBookMark() {
        return IdBookMark;
    }

    public void setIdBookMark(String idBookMark) {
        IdBookMark = idBookMark;
    }

    public String getBookMarkActive() {
        return BookMarkActive;
    }

    public void setBookMarkActive(String bookMarkActive) {
        BookMarkActive = bookMarkActive;
    }
}
Run Code Online (Sandbox Code Playgroud)

注意:Realm版本'io.realm:realm-android:0.87.2'

Chr*_*ior 5

您无法信任Android Studio中由Realm管理的RealmObjects的调试视图.它们只是存储在本机内存中的真实底层数据的代理对象.这意味着该字段仅显示字段的默认值:0for int,nullfor String和references.

你可以在这里阅读更多相关信息:http://realm.io/docs/java/latest/#debugging