我正在尝试将变量(Of class“Level”)传递给另一个活动,但Eclipse拒绝接受它。
Intent i = new Intent("LevelSpelen");
i.putExtra("speelveld", level1);
startActivity(i);
这是Eclipse给我的错误:Intent类型中的方法putExtra(String,boolean)不适用于参数(String,Level)。
为什么我不能将此变量传递给另一个活动?
答案 0 :(得分:0)
如果您在自己的类中实现Serializable接口,它就可以工作。
课程代码
public class CustomClass implements Serializable{
private static final long serialVersionUID = 1L;
答案 1 :(得分:0)
putExtra方法通常用于原始数据类型。如果您希望两个活动使用具有相同数据的对象,则可以执行以下两项操作之一:
1)将对象的属性(作为Extra中的原始数据类型)传递给第二个活动,并在那里构建对象的实例。
2)第二种可能性会更有趣:不是为应用程序使用普通的Application类,而是可以使用自己的扩展应用程序的类。在该类中,您可以将对象定义为属性,以便所有应用程序组件都可以访问它。