我想通过点击Recycler视图中的Item将对象从一个活动传递到另一个活动。现在我遇到的处理项目点击的事情是:
public static class RecylerViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public RecylerViewHolder(final View itemView) {
super(itemView);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Context context = itemView.getContext();
Intent intent = new Intent(context, DetailAct.class);
context.startActivity(intent);
}
}
显然,它是内部 静态类。现在我必须将要在项目中膨胀的对象调用到下一个Activity中。该对象位于其外部类中,即Adapter类的 onBindViewHolder 因此,当我研究时,我发现我们应该不从内部静态类调用外部类的变量。我还想过在我的活动中创建一个构造函数来传递对象然后我可能会错,因为这样我就不会创建任何活动。现在我完全糊涂了如何做到这一点。请帮忙
答案 0 :(得分:0)
在onClick()
方法中,您可以调用getPosition()
,它将为您提供所点击项目的数据集中的位置。使用该信息,您可以访问数据集特定项目中的属性,并通过putExtra()
intent方法将它们传递给您的活动。