Android Studio:对象的 SavedInstanceState 不起作用
Android Studio: SavedInstanceState of object doesn't work
我有一个名为 "MemoryCard" 的自制对象,它实现了 View.OnClickListener 和 Serializable 并且是扩展为 Activity.
我将 MemoryCard card;
声明为我的 onCreate() 方法之外的数据字段,并且
我的 onSaveInstanceState 方法如下所示:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putSerializable("CARD", card);
}
在我的 OnCreate 里面站
if (savedInstanceState == null) {
card = new MemoryCard(this, 0, 1, R.drawable.testImage); // given parameters
}
else {
card = (MemoryCard) savedInstanceState.getSerializable("CARD");
}
但我总是遇到我的应用程序停止的例外情况。是我有什么问题还是 MemoryCard 不能扩展或实现任何东西?
你应该放在超级方法调用之前
@Override
public void onSaveInstanceState(Bundle outState) {
outState.putSerializable("CARD", card);
super.onSaveInstanceState(outState);
}
我有一个名为 "MemoryCard" 的自制对象,它实现了 View.OnClickListener 和 Serializable 并且是扩展为 Activity.
我将 MemoryCard card;
声明为我的 onCreate() 方法之外的数据字段,并且
我的 onSaveInstanceState 方法如下所示:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putSerializable("CARD", card);
}
在我的 OnCreate 里面站
if (savedInstanceState == null) {
card = new MemoryCard(this, 0, 1, R.drawable.testImage); // given parameters
}
else {
card = (MemoryCard) savedInstanceState.getSerializable("CARD");
}
但我总是遇到我的应用程序停止的例外情况。是我有什么问题还是 MemoryCard 不能扩展或实现任何东西?
你应该放在超级方法调用之前
@Override
public void onSaveInstanceState(Bundle outState) {
outState.putSerializable("CARD", card);
super.onSaveInstanceState(outState);
}