我创建了一个对象,其中包含 ImageView、boolean 和 Integer 类型的数据字段。
public class MemoryCard implements View.OnClickListener, Serializable {
private ImageView image;
private int id;
private int nr;
private boolean clicked = false;
private int cardBack;
private int cardFront;
public MemoryCard(Context context, int id, int nr, int cardFront)
{
this.id = id;
this.nr = nr;
this.cardBack = R.drawable.backside;
this.cardFront = cardFront;
this.image = new ImageView(context);
this.image.setImageResource(this.cardBack);
this.image.setOnClickListener(this);
}
}
当我开始将对象从 MainActivity 发送到 SecondActivity 时,会发生错误并且我的应用程序停止运行。
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("object", new MemoryCard(this, 0, 0, R.drawable.myImage));
startActivity(intent);
我认为这与MemoryCard构造函数的参数this和R.drawable.myImage有关,但为什么呢?
最佳答案
ImageView
可以序列化吗?仅当对象实现 Serialized
并且其所有成员均可序列化时,该对象才可序列化。
关于java - 无法通过 Intent 将自制的可序列化对象传递给另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45148045/