如何在两个活动之间获得相同的realm实例?

时间:2018-04-02 16:28:21

标签: android android-recyclerview realm

public class MyApp extends MultiDexApplication {
  private static MyApp instance;

  private static class LazyHolder {
    private static final Realm INSTANCE = Realm.getDefaultInstance();
  }

  public static Realm getRealm() {
    return LazyHolder.INSTANCE;
  }

  public static Context getContext() {
    return instance;
  }

  @Override
  public void onCreate() {
    instance = this;
    super.onCreate();
    Realm.init(this);
  }
}

这是我的申请活动。

一个recyclerView适配器正在使用两个活动。

首先,正常的文章列表活动。 第二,找到文章列表活动。

当我为任何活动选择具有相同网址的文章时,我想保存该文章的网址。

这就是我如何确定它是否存储在onBindViewHolder()中的Realm中。

RealmResults<Article> results = MyApp.getRealm().where(Article.class).equalTo("link", list.get(position).getLink()).findAll();
boolean isSeenArticle = results.size() >= 1;
if(hasKeyword(position)) {
  String[] temp = list.get(position).getTitle().split(keyword);
  setTitleSpannable(holder.title, temp, isSeenArticle);
}
else {
  holder.title.setText(list.get(position).getTitle());
  holder.title.setTextColor(isSeenArticle ? context.getResources().getColor(R.color.OneDarkSemiSemiGray) : context.getResources().getColor(R.color.textColorPrimary));
}

holder.articler_title文本的颜色仅在一侧发生变化。

但是,这两个活动似乎都有不同的Realm实例。

如何使用相同的Realm实例?

0 个答案:

没有答案