-1

我有一个对象,我需要通过 onclick 方法通过 Intent 传递给另一个 Activity。

我在这里关注这个答案如何使用 Intents 将对象从一个 Android Activity 发送到另一个? 效果很好,但是我的对象中有一个对象数组。

我如何通过它的对象数组传递这个对象?

以下是使用 Parcelable 之前的类

List(要传递的对象)

public class List  {

    private String Name;
    private ArrayList<ListItem> items;

    public List(){
        items = new ArrayList<ListItem>();
    }

    public void addItem(String title, String d, String s, int p){
        ListItem i = new ListItem();
        i.setDecription(d);
        i.setPrice(p);
        i.setSite(s);
        i.setTitle(title);
        items.add(i);
    }

    public String getName() {
        return Name;
    }
    public void setName(String Name) {
        this.Name = Name;
    }
    public int getCount() {
        return items.size();
    }

    public ArrayList<ListItem> getList(){
        return items;
    }
} 

项目清单

public class ListItem {

    private String  title;
    private String  decription;
    private String  site;
    private int     price;


    public void setTitle(String title) {
        this.title = title;
    }
    public void setDecription(String d){
        this.decription = d;
    }
    public void setSite(String s){
        this.site = s;
    }
    public void setPrice(int i){
        this.price = i;
    }

    public String getTitle(){
        return title;
    }
    public String getDecription(){
        return decription;
    }
    public String getSite(){
        return site;
    }
    public int getPrice(){
        return price;
    }
}

那么我将如何在 List 上使用 Parcelable 来发送 ArrayList。

谢谢,如果您需要更多信息,请询问!

4

1 回答 1

1

您正在尝试传递通常不应传递的数据。列表是 SQLite 数据库的理想候选者。尝试这种或其他方式在 android 中持久化数据:http: //developer.android.com/guide/topics/data/data-storage.html

如果您坚持使用 Parcelable: 如何使我的自定义对象 Parcelable?

也不要使用 List 作为你自己的类型,它是标准的 JAVA。

于 2013-08-05T18:42:12.797 回答