Java Eclipse不允许故意使用变量
我试图将类级别的变量传递给另一个活动,但Eclipse拒绝接受它Java Eclipse不允许故意使用变量,java,android,android-intent,android-activity,Java,Android,Android Intent,Android Activity,我试图将类级别的变量传递给另一个活动,但Eclipse拒绝接受它 Intent i = new Intent("LevelSpelen"); i.putExtra("speelveld", level1); startActivity(i); 这是Eclipse给我的错误:类型Intent中的方法putExtraString,boolean不适用于参数String,Level 为什么我不能将此变量传递给另一个活动?如果您在自己的类中实现了可序列化接口,它就会工作 班级代码 public cla
Intent i = new Intent("LevelSpelen");
i.putExtra("speelveld", level1);
startActivity(i);
这是Eclipse给我的错误:类型Intent中的方法putExtraString,boolean不适用于参数String,Level
为什么我不能将此变量传递给另一个活动?如果您在自己的类中实现了可序列化接口,它就会工作 班级代码
public class CustomClass implements Serializable{
private static final long serialVersionUID = 1L;
putExtra方法通常用于基本数据类型。如果希望两个活动使用具有相同数据的对象,可以执行以下两种操作之一: 1将属性作为原始数据类型传递给第二个活动,并在那里构建对象的实例
2第二种可能更有趣:您可以使用自己的类来扩展应用程序,而不是为您的应用程序使用普通的应用程序类。在该类中,您可以将对象定义为属性,以便所有应用程序组件都可以访问该对象。错误应该确切地告诉您出了什么问题,您错误地调用了该方法。请注意,这与Eclipse无关,而与putExtra的方法签名有关。。。方法。我知道,但我如何解决它?我找不到Object的签名,因为方法putExtraString,Object不存在。但是,您可以让Level类实现Serializable或Parcelable接口,并调用putExtra String name、Serializable valuearguments String、Level。哪种类型的level1?我不熟悉您的Intent类,但putExtra似乎需要第二个布尔参数,而不是Level参数。除非有其他方法可用于过载。