Java android意图-传递数据
如何在两个活动之间传递和获取“myobject1”? 第一项活动:Java android意图-传递数据,java,android,listview,android-intent,Java,Android,Listview,Android Intent,如何在两个活动之间传递和获取“myobject1”? 第一项活动: private ArrayList<Custom> myobject1 = new ArrayList<Custom>(); ... i.putExtra("myobject1", myobject1); private ArrayList myobject1=new ArrayList(); ... i、 putExtra(“myobject1”,myobject1); 第二项活动: results
private ArrayList<Custom> myobject1 = new ArrayList<Custom>();
...
i.putExtra("myobject1", myobject1);
private ArrayList myobject1=new ArrayList();
...
i、 putExtra(“myobject1”,myobject1);
第二项活动:
results =(ArrayList<Custom>) getIntent().getSerializableExtra("myobject1");
results=(ArrayList)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();
}
}
public类自定义实现{
私人串大;
私人串小;
公共自定义(字符串n、字符串d)
{
大=n;
小=d;
}
公共字符串getFirst()
{
回归大;
}
公共字符串getSecond()
{
回报小;
}
@凌驾
公共整数比较(自定义o){
如果(this.big!=null)
返回这个.big.toLowerCase().compareTo(o.getFirst().toLowerCase());
其他的
抛出新的IllegalArgumentException();
}
}
此时此刻,我发现了一个错误:
E/AndroidRuntime(8032):java.lang.RuntimeException:包裹:无法封送值为了将值从
活动
传递到另一个活动,您尝试传递的对象的类应实现包裹
接口。你可以在这里找到更多信息。如果你需要更具体的东西,请开枪 我认为习俗需要改变Serializable@Dikobraz要使其可序列化,只需将Serializable
接口实现到您的Custom
类。