如何将我的对象数据从列表发送到android上的显示页面?

时间:2014-07-05 14:53:46

标签: android

我正在创建一个非常简单的app,它有一个自定义listItem(每个listitem对象包含一个字符串,一个整数和一个第二个整数值)。

我想要实现的是允许用户点击listitem,并在新屏幕中打开它。它只会显示相同的信息。

然而我觉得有点像新手一样迷失了。如何将listItem数据从第一个屏幕发送到第二个屏幕?我正在尝试实现类似本教程的内容 - 但我无法弄清楚它们是如何工作的:http://www.codelearn.org/android-tutorial/twitter/intent-example-tweet-detail-screen-module

我已经查看了stackoverflow的答案,但我想我不知道该搜索什么,因为我还没找到一个

1 个答案:

答案 0 :(得分:0)

您可以使用Serializable实现您的类。

import java.io.Serializable;

@SuppressWarnings("serial") //with this annotation we are going to hide compiler warning
public class CustomObject implements Serializable {

public CustomObject(double id, String name){
    this.id = id;
    this.name = name;
}

public double getId() {
    return id;
}
public void setId(double id) {
    this.id = id;
}
public String getName() {
    return this.name;
}
public void setName(String name) {
    this.name = name;
}

private double id;
private String name;

}

我们将名为customObject的对象从X活动发送到Y活动。在你的onItemClik

CustomObject customObject = new DCustomObjectneme(4,"YourName");
Intent i = new Intent(this, Y.class);
i.putExtra("sampleObject", customObject);
startActivity(i);

在Y活动中,我们得到了对象。

Intent i = getIntent();
CustomObject customObject = (CustomObject)i.getSerializableExtra("sampleObject");

试试吧。