Java 为领域关系对象创建RealmRecyClient视图
我有两个对象,它们之间的关系如下:Java 为领域关系对象创建RealmRecyClient视图,java,android,android-recyclerview,realm,Java,Android,Android Recyclerview,Realm,我有两个对象,它们之间的关系如下: public class Acitivities extends RealmObject{ @PrimaryKey int id; String nameActivity; RealmList<Task> Task; } public class Task extends RealmObject{ @PrimaryKey int id; String nameTask; String Description; }
public class Acitivities extends RealmObject{
@PrimaryKey
int id;
String nameActivity;
RealmList<Task> Task;
}
public class Task extends RealmObject{
@PrimaryKey
int id;
String nameTask;
String Description;
}
但我总是出错,我错了吗?为任务创建RecyclerView,因为RealmList在活动中?
我想在我的任务活动中显示此RecyclerView,而不是在活动中。
帮助我:(要显示链接到给定
任务的活动
,您需要一个双向链接(这样链接也会有活动活动;
),或者您可以将链接到任务的对象定义为任务
(领域3.1+)的一个字段
公共类活动扩展RealmObject{
@主键
int-id;
字符串命名活动;
现实主义任务;
}
公共类任务扩展RealmObject{
@主键
int-id;
字符串命名任务;
字符串描述;
@链接对象(“任务”)
最终RealmResults活动=空;
}
然后
公共类CustomRealmAdapter扩展RealmRecyclServiceAdapter{
公共CustomRealmAdapter(OrderedRealmCollection数据){
超级(数据,真实);
}
@凌驾
公共无效onBindViewHolder(最终MyViewHolder,最终int位置){
最终任务tsk=getData().get(位置);
holder.nameActivity.setText(tsk.activity.get(0.getNameActivity());
holder.nameTask.setText(tsk.getNameTask());
holder.Description.setText(tsk.getDescription());
}
}
我总是出错,我错了吗?
定义“错误”顺便说一句,我不明白您到底想显示什么。我有一个任务活动,它是我保存在任务对象中的,任务对象与活动有关系,我想为任务创建一个回收器视图,还可以查看与该任务有关系的活动的名称。错误是活动的名称不显示。@EpicPandaForce如何?
public class CustomRealmAdapter extends RealmRecyclerViewAdapter<Task,
CustomRealmAdapter.MyViewHolder>{
OrderedRealmCollection<Task> data;
RealmResult<Task> task;
RealmResult<Activities> activities;
public CustomRealmAdapter(OrderedRealmCollection<Task> data,
RealmResult<Task> task){
super(data,true);
this.data = data;
this.task = task;
}
}
@Override
public void onBindViewHolder(final MyViewHolder holder, final int position) {
final Task tsk = task.ge(position);
holder.nameActivity.setText(activities.getNameActivity);
holder.nameTask.setText(tsk.getNameTask);
holder.Description.setText(tsk.getDescription);
}
public class Acitivities extends RealmObject{
@PrimaryKey
int id;
String nameActivity;
RealmList<Task> Task;
}
public class Task extends RealmObject{
@PrimaryKey
int id;
String nameTask;
String Description;
@LinkingObjects("Task")
final RealmResults<Acitivities> activity = null;
}
public class CustomRealmAdapter extends RealmRecyclerViewAdapter<Task,
CustomRealmAdapter.MyViewHolder>{
public CustomRealmAdapter(OrderedRealmCollection<Task> data){
super(data,true);
}
@Override
public void onBindViewHolder(final MyViewHolder holder, final int position) {
final Task tsk = getData().get(position);
holder.nameActivity.setText(tsk.activity.get(0).getNameActivity());
holder.nameTask.setText(tsk.getNameTask());
holder.Description.setText(tsk.getDescription());
}
}