java - Android-Realm如何获取值

标签 java android realm android-database

我正在尝试获取我保存在 Realm 中的值,但我不知道该怎么做..该值始终为空..但是当我调试代码时,该值如下图所示:

Note: BookMarkActive & idBookMark has the proper value in the selected line but below does not appear anything.

enter image description here

如何获取该值?

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

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";
}

书签类:

@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;
    }
}

Note: Realm version 'io.realm:realm-android:0.87.2'

最佳答案

对于由 Realm 管理的 RealmObject,您无法信任 Android Studio 中的调试 View 。它们只是存储在 native 内存中的真实底层数据的代理对象。这意味着该字段将仅显示该字段的默认值:0 表示 intnull 表示 String和引用文献。

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

关于java - Android-Realm如何获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34816755/

相关文章:

php - Android 本地数据库通过 PHP 转换为 XML 到 mySql。

android - 错误 "Failed to load properties file for project ' MJAndroid'"在 eclipse

java - Kotlin 中的错误 "must not be null"

java - [Android][RecyclerView] 方法不会覆盖或实现父类(super class)型的方法

java - Camel : Add TypeConverter in Test Case

java - 使用较新版本的 jna 库在 Glassfish 上运行 Web 应用程序

ios - Xcode 10.2 中的 Realm Swift - Swift 5.0 编译器无法导入错误 : Module compiled with Swift 4. 2

Java:(int)(float)Float.valueOf(s) 或 Float.valueOf(s).toInt()

java - 减少应用程序传送的 Realm 数据库的大小

Android Realm 插件导致 ClassNotFoundException