我是使用 Realm库的新手,并且正在尝试在我的Android应用程序中实现它。根据我的 json响应中特定元素的视图类型,我试图根据我的 listview 进行分区。
我尝试使用 recycler view
来实现这些部分,但问题是我有2种视图类型,并且这些视图类型的标题添加导致了问题。由于 Realm
没有RecyclerAdapter
的支持,我创建了一个实现,它将使用支持RecyclerView的自定义适配器。
所以,我会使用ListView
并尝试为每个Object类型使用一个简单的接口来确定类型,然后根据组的位置插入Headers。
由于某种原因,Realm不允许我在扩展RealmObject
的类中实现接口。
这就是这个类的样子:
import com.google.gson.annotations.SerializedName;
import io.realm.RealmObject;
import io.realm.annotations.Ignore;
import io.realm.annotations.PrimaryKey;
public class TestClass extends RealmObject implements Subjects {
@PrimaryKey
@SerializedName("subjectID")
private String subjectID;
private String subjectDate;
@SerializedName("subjectDescription")
private String subjectDescription;
public String getSubjectID() {
return subjectID;
}
public void setSubjectID(String subjectID) {
this.subjectID = subjectID;
}
public String getSubjectDate() {
return subjectDate;
}
public void setSubjectDate(String subjectDate) {
this.subjectDate = subjectDate;
}
public String getSubjectDescription() {
return subjectDescription;
}
public void setSubjectDescription(String subjectDescription) {
this.subjectDescription = subjectDescription;
}
@Override
public boolean isSubjectA() {
return true;
}
@Override
public boolean isFoo() {
return false;
}
@Override
public boolean isBar() {
return false;
}
}
这是编译错误日志:
Error:(76, 20) error: Getter isSubject is not associated to any field.
Note: Creating DefaultRealmModule
Warning:File for type 'io.realm.DefaultRealmModule' created in the last round will not be subject to annotation processing.
Warning:File for type 'io.realm.DefaultRealmModuleMediator' created in the last round will not be subject to annotation processing.
2 warnings
我不知道为什么抱怨这个问题,但它没有编译项目。
我在这里阅读了一些关于这个问题的讨论:link ..显然,这是一个关于这个问题的公开讨论,但任何其他的帮助将非常感谢..谢谢
答案 0 :(得分:6)
你的字段名称中有拼写错误,也不应该有前缀,因此它会是" sub j ect"和getter必须是isSubject()
@Ignore
private boolean subject = false;
public boolean isSubject() {
return subject;
}