Android 从RecyclerView项到其他活动的值

Android 从RecyclerView项到其他活动的值,android,list,android-recyclerview,Android,List,Android Recyclerview,我试图将值从一个具有X位置的RecyclerView项目发送到显示这些值的其他活动,例如,在我的RecyclerView my X项目中,有一个图像、一个标题和一个副标题;我想在其他活动中显示onClick,包括图像、标题和副标题。这样,我的其他项目。 我想应该用putExtra来完成,但我没办法 这是我的带ViewHolder的适配器: public class MyAdapter extends RecyclerView.Adapter<MyAdapter.myViewHolder&g

我试图将值从一个具有X位置的RecyclerView项目发送到显示这些值的其他活动,例如,在我的RecyclerView my X项目中,有一个图像、一个标题和一个副标题;我想在其他活动中显示onClick,包括图像、标题和副标题。这样,我的其他项目。 我想应该用putExtra来完成,但我没办法

这是我的带ViewHolder的适配器:

public class MyAdapter extends RecyclerView.Adapter<MyAdapter.myViewHolder> {

private LayoutInflater inflater;
private List<Data> info = Collections.emptyList();
private Context context;

public MyAdapter (Context context, List<Data> info){
    this.context=context;
    inflater = LayoutInflater.from(context);
    this.info = info;

}


@Override
public myViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

    View view = inflater.inflate(R.layout.recycler_item, parent, false);
    myViewHolder holder = new myViewHolder(view);
    return holder;
}

@Override
public void onBindViewHolder(myViewHolder holder, int position) {

    Data current = info.get(position);
    holder.title.setText(current.title);;
    holder.subtitle.setText(current.subtitle);
    holder.image.setImageResource(current.imagenId);

}

@Override
public int getItemCount() {
    return info.size();
}

class myViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

    ImageView image;
    TextView title;
    TextView subtitle;

    public myViewHolder(View itemView) {
        super(itemView);

        image = (ImageView) itemView.findViewById(R.id.Image1);
        title = (TextView) itemView.findViewById(R.id.TextTitle);
        subtitle = (TextView) itemView.findViewById(R.id.TextSubTitle);
        itemView.setOnClickListener(this);

    }

    @Override
    public void onClick(View view) {
        Intent intent = new Intent(context,ItemSelection.class);
        context.startActivity(intent);

    }
}
}

您可以在您的
视图夹中这样做

  @Override
public void onClick(View view) {
    Intent intent = new Intent(context,ItemSelection.class);
    Bundle bundle = new Bundle();
    bundle.putSerializable("DATA",info.get(getAdapterPosition()));
    intent.putExtras(bundle);
    context.startActivity(intent);

}
然后通过
getIntent()
活动#onCreate()
中检索实例:

当然,您的
数据
类必须实现
可序列化

   public class Data implements Serializale { ...

谢谢你的回答,抱歉,我是新手,我应该如何替换新活动中的值?我的意思是,在布局中设置它们。因为我试图创建一个新方法,在其中,在布局中找到我的文本,然后将其替换为(data.title),而不是我的应用程序crashes@JavierGuerrero更新了答案。在
setContentView()
之后,在
Activity
onCreate()
中执行这些操作。
  @Override
public void onClick(View view) {
    Intent intent = new Intent(context,ItemSelection.class);
    Bundle bundle = new Bundle();
    bundle.putSerializable("DATA",info.get(getAdapterPosition()));
    intent.putExtras(bundle);
    context.startActivity(intent);

}
  Data data = (Data)getIntent().getExtras().getSerializable("DATA");
  //if you have a TextView, for example...
  yourTextView.setText(data.getTitle());
   public class Data implements Serializale { ...