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实例?