如何在android中使用JAVA在RecyclerView的其他活动中显示不同的数据

如何在android中使用JAVA在RecyclerView的其他活动中显示不同的数据,java,android,android-activity,android-recyclerview,android-json,Java,Android,Android Activity,Android Recyclerview,Android Json,例如,我在recycler视图中创建了一个活动,并给出了包含项,即名称、标题和标题,还将OnClick Listener放在adapter类中。现在我想实现的是,当我点击第一个项目时,它应该打开另一个活动,它应该显示不同的数据,比如在点击特定人员时,它应该显示他/她的ssn等详细信息。我已经创建了所有这些,但它在第一个活动中显示相同的数据,在第二个活动中显示相同的数据 public class Data implements Parcelable { public static St

例如,我在recycler视图中创建了一个活动,并给出了包含项,即名称、标题和标题,还将OnClick Listener放在adapter类中。现在我想实现的是,当我点击第一个项目时,它应该打开另一个活动,它应该显示不同的数据,比如在点击特定人员时,它应该显示他/她的ssn等详细信息。我已经创建了所有这些,但它在第一个活动中显示相同的数据,在第二个活动中显示相同的数据

public class Data  implements Parcelable {

    public static String PARAM = "selected.data";

    private String name;
    private String title;
    private String heading;

    // Parcelable Implementations
    @Override
    public int describeContents() {
        return hashCode();
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(name);
        dest.writeString(title);
        dest.writeString(heading);
    }

    public static final Parcelable.Creator<Data> CREATOR
            = new Parcelable.Creator<Data>() {
        public Data createFromParcel(Parcel in) {
            return new Data(in);
        }

        public Data[] newArray(int size) {
            return new Data[size];
        }
    };

    // Constructors
    // Getter & Setters
    // Override Equals and HashCode Methods
}
第一项活动:

  • 姓名:xyz
  • 标题:创始人
  • 标题:太棒了
单击该文本视图后,它应显示为: 第二项活动:

  • 姓名:xyz
  • 标题:创始人
  • 标题:太棒了
  • 描述:Lorem ipsum dolor sit amet,是一位杰出的献祭者。两个是阿利奎特,一个是拉奥里特·洛博蒂斯,一个是苏打水,一个是法雷特拉河。但在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底之前,在8月底。毛里斯·索利西图丁·马蒂斯·尼布是一位封建者

您可以使用参数从适配器启动活动

若需要传递对象,则应将数据类实现为可序列化或可打包

数据类 您可以检索从第一个活动传递的数据

public class Data  implements Parcelable {

    public static String PARAM = "selected.data";

    private String name;
    private String title;
    private String heading;

    // Parcelable Implementations
    @Override
    public int describeContents() {
        return hashCode();
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(name);
        dest.writeString(title);
        dest.writeString(heading);
    }

    public static final Parcelable.Creator<Data> CREATOR
            = new Parcelable.Creator<Data>() {
        public Data createFromParcel(Parcel in) {
            return new Data(in);
        }

        public Data[] newArray(int size) {
            return new Data[size];
        }
    };

    // Constructors
    // Getter & Setters
    // Override Equals and HashCode Methods
}
快乐编码


问候

你能至少把你的适配器贴出来吗?或某些代码?是否要将同一对象从RecyclerAdapter传递到另一个活动?从recycler视图项调用详细信息活动时,按意图传递数据,并使模型类可打包或序列化
public class SecondActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        // Retrieve Data from Intent Object
        Data data = getIntent().getParcelableExtra(Data.PARAM);

        if(null != data) {
            setText(findViewById(R.id.text_name), data.getName());
            setText(findViewById(R.id.text_title), data.getTitle());
            setText(findViewById(R.id.text_heading), data.getHeading());
        }

    }

    private void setText(TextView view, String text) {
        view.setText(text);
    }
}