android意图 - 传递数据

时间:2011-12-18 11:52:18

标签: java android listview android-intent

如何在两个活动之间传递并获取“myobject1”?

第一项活动:

private ArrayList<Custom> myobject1 = new ArrayList<Custom>();
...
i.putExtra("myobject1", myobject1);

第二项活动:

results =(ArrayList<Custom>) getIntent().getSerializableExtra("myobject1");

这是我的Custom.class:

public class Custom implements Comparable<Custom>{


    private String big;
    private String small;

    public Custom(String n,String d)
    {
        big = n;
        small = d;

    }
    public String getFirst()
    {
        return big;
    }
    public String getSecond()
    {
        return small;
    }

    @Override
    public int compareTo(Custom o) {
        if(this.big != null)
            return this.big.toLowerCase().compareTo(o.getFirst().toLowerCase()); 
        else 
            throw new IllegalArgumentException();
    }
}

此刻我收到错误: E / AndroidRuntime(8032):java.lang.RuntimeException:Parcel:无法编组值

1 个答案:

答案 0 :(得分:1)

为了将值从Activity传递到另一个,您尝试传递的对象的Class应该实现Parcelable接口。您可以在http://developer.android.com/reference/android/os/Parcelable.html找到更多信息。如果您需要更具体的内容,请拍摄!