java - Realm.io [Java] 通知 - 如何仅监听特定表中的更改?

标签 java android database realm

我在 realm java 文档中看到了这个示例代码。

public class MyActivity extends Activity {
    private Realm realm;
    // A reference to RealmChangeListener needs to be held to avoid being
    // removed by the garbage collector.
    private RealmChangeListener realmListener;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      realm = Realm.getDefaultInstance();
      reamlListener = new RealmChangeListener() {
        @Override
        public void onChange() {
            // ... do something with the updates (UI, etc.) ...
        }};
      realm.addChangeListener(realmListener);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        // Remove the listener.
        realm.removeChangeListener(realmListener);
        // Close the realm instance.
        realm.close();
    }
}

我有一些数据库架构包含多个表。这些表中的数据总是在变化,但我只有一张表需要监听并刷新与该表相关的 UI。我不想检查在对任何其他 Realm 对象进行任何小的更新之后, Realm 中的这种变化是否恰好在通缉表中。 您可以建议哪些最佳做法?

最佳答案

在 Realm 具有细粒度通知之前,我会通过使用 ContentObserver、RxJava 或您自己的 Observer 接口(interface)来实现我自己的通知系统。

关于java - Realm.io [Java] 通知 - 如何仅监听特定表中的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32534131/

相关文章:

java - 如何在ListView的每一行添加按钮?

java - 无法在 App Engine 中将静态文件转换为资源文件以使 http 请求通过身份验证过滤器

java - 如何在java中创建对话框窗口?

java - 使用暂停和恢复选项从后台服务在 TextView 中设置运行计时器

database - 如何在 Postgres 8.2 中打开 SQL 日志记录?

java - 让 Android 选择下一个 SQLITE _ID

java - 多次使用ListView

Android MyFirstApp + WebView 死于 "Unable to start activity"

MySQL - 如何通过字符串匹配将一个表中的值插入到另一个表中?

html - Postgresql Ltree 查询获取嵌套 json/array 的注释线程并从中构建 HTML