尝试使存储 ObservableArrayList 的对象扩展 RealmObject,但 Android 项目无法编译
Trying to make an object that stores an ObservableArrayList extend RealmObject, but Android project does not compile
我有一个这样的对象:
public class SubredditAddition extends RealmObject {
@PrimaryKey
private String mSubredditName;
private ObservableArrayList<Keyword> mKeywords = new ObservableArrayList<>();
}
当我尝试编译程序时,Gradle 出现以下错误:
Error:(13, 8) error: Field "mKeywords" of type "android.databinding.ObservableArrayList<Keyword>" is not supported.
Warning:Unclosed files for the types '[io.realm.SubredditAdditionRealmProxy]'; these types will not undergo annotation processing
有什么方法可以在领域中存储 ObservableArrayList 吗?
您不能在任何领域对象中使用 ObservableArrayList 或 ArrayList 或任何 java 集合。
您必须使用 RealmList 而不是 ObservableArrayList。
还要确保关键字不能在内部 class(必须在 SubredditAddition 的范围之外)并扩展 RealmObject
修复了它会创建一个空的 class,如下所示:
public class RealmObservableArrayList<T> extends ObservableArrayList implements RealmModel {
}
我有一个这样的对象:
public class SubredditAddition extends RealmObject {
@PrimaryKey
private String mSubredditName;
private ObservableArrayList<Keyword> mKeywords = new ObservableArrayList<>();
}
当我尝试编译程序时,Gradle 出现以下错误:
Error:(13, 8) error: Field "mKeywords" of type "android.databinding.ObservableArrayList<Keyword>" is not supported.
Warning:Unclosed files for the types '[io.realm.SubredditAdditionRealmProxy]'; these types will not undergo annotation processing
有什么方法可以在领域中存储 ObservableArrayList 吗?
您不能在任何领域对象中使用 ObservableArrayList 或 ArrayList 或任何 java 集合。
您必须使用 RealmList 而不是 ObservableArrayList。
还要确保关键字不能在内部 class(必须在 SubredditAddition 的范围之外)并扩展 RealmObject
修复了它会创建一个空的 class,如下所示:
public class RealmObservableArrayList<T> extends ObservableArrayList implements RealmModel {
}