我有一个包含Realm对象的表,我正在调用Foo。Foo的其中一列指向另一个RealmObject,Bar。我想查询表Foo并挑选出我需要的所有Bar对象,然后将它们添加到RealmBaseAdapter。但是,据我所知,RealmBaseAdapter仅在其构造函数中使用了一个RealmResults列表。我如何在不查询Bar表的情况下形成Bar的RealmResults?或者,我如何查询Foo表并返回Bar的RealmResults?例如,假设您有一张包含产品和产品分割的表格,例如米花、Jade米片、水果圈都属于Cereal产品部分。我希望按某种规范查询产品表,并列出结果中包含的所
我有一个Realm列表,我想按字母顺序对列表进行排序。Collections.sort(contacts,newjava.util.Comparator(){@Overridepublicintcompare(Contactsl1,Contactsl2){Strings1=l1.getName();Strings2=l2.getName();returns1.compareToIgnoreCase(s2);}});但是这个逻辑不成立,我在下面发布了崩溃报告,请仔细阅读。java.lang.UnsupportedOperationException:Replacingandelement
我有以下RealmObject:publicclassCityextendsRealmObject{privateStringcityId;privateRealmListstreets;publicStringgetId(){returncityId;}publicvoidsetCityId(StringcityId){this.cityId=cityId;}publicRealmListgetStreets(){returnstreets;}publicvoidsetStreets(RealmListstreets){this.streets=streets;}}现在有了cityI
我正在Android应用程序中试用Realm.io,不过,为了安全起见,我想抽象DB层,以便在需要时可以切换回基于SQLite的标准无需重写大部分应用程序的数据库。然而,由于Realm的特殊性质,我发现很难正确抽象它:当绑定(bind)到一个Realm时,RealmObjects是代理,所以我不能像POJO一样传递它们。所有Realm实例都需要在使用它们的每个线程中正确打开和关闭。我已经使用最近的Realm.copyFromRealm()API而不是传递与Realm绑定(bind)的RealmObjects来绕过这些限制,但我认为这样我就失去了使用realm的所有好处(是吗?).有什么
我尝试使用Realm和RxJava实现模式存储库。存储库接口(interface)有这样的签名Observable>query(Specificationspecification);因此,当我使用Realm并希望检索结果“asObservable”时,我得到了Observable>。我找不到将Observable>转换为Observable>的方法。谁能帮忙解决这个问题?我试过这样的东西finalObservable>realmResults=realm.where(PlantRealm.class).equalTo(PlantTable.ID,"1").findAll().asOb
我在我的开源Linux命令库项目中用realm替换了sqlite。到目前为止一切顺利,但现在我遇到了问题。我正在使用RealmBaseAdapter在带有搜索界面的ListView中显示所有命令。对于搜索,下面狙击的Realm会按如下顺序排列结果:查询:测试结果:l2测试rc测试测试测试参数RealmResultscommands=mRealm.where(Command.class).contains("name",query).findAll();mAdapter.updateRealmResults(commands);使用旧的sqlite逻辑,顺序是这样的:结果:测试测试参数l
我在我的开源Linux命令库项目中用realm替换了sqlite。到目前为止一切顺利,但现在我遇到了问题。我正在使用RealmBaseAdapter在带有搜索界面的ListView中显示所有命令。对于搜索,下面狙击的Realm会按如下顺序排列结果:查询:测试结果:l2测试rc测试测试测试参数RealmResultscommands=mRealm.where(Command.class).contains("name",query).findAll();mAdapter.updateRealmResults(commands);使用旧的sqlite逻辑,顺序是这样的:结果:测试测试参数l
我在我的应用程序中使用回收器View,并想在后台线程上进行一些计算,获取RealmObjects列表,并根据它刷新我的适配器。作为一些背景知识,我有一个重要的排序要求,并且回收器View需要显示从不同表上的查询产生的对象(尽管它们仍然产生相同的对象类型)。我不想在主线程上执行这些可能代价高昂的查询。最好的方法是什么?据我所知,我可以从后台线程获取ids(String)列表,并在主线程上进行查询。所以我会做类似realm.where(ObjectA.class).in(listOfIds).findAll()的事情。但是,我认为我不能保证集合的顺序是我在后台排序的listOfIds的顺序
我正在试用Realm以及包括LiveData在内的Android架构组件。我一直在关注Google的应用程序架构指南:https://developer.android.com/topic/libraries/architecture/guide.html...用Realm代替Room。我有一切工作使用:LiveData>从我的存储库层直接通过ViewModel到View。我认为从存储库返回更多通用类型可能会更好,所以LiveData>而不是LiveData>.这是我遇到问题的代码fragment:@NonNull@OverrideprotectedLiveData>loadFromD
我正在使用Realm3.0.0我正在从Realm中获取一些对象并尝试添加onChangeListener,但是当对象更改时它不会被触发这是代码,我在这里遗漏了什么吗?RealmResultsrealmResults=RealmManager.recordsDao().loadRecords();realmResults.addChangeListener(newRealmChangeListener>(){@OverridepublicvoidonChange(RealmResultselement){for(inti=0;i此外,根据文档,它提到调用invalidateView();