gpt4 book ai didi

java - 安卓存储: OnSavedInstanceState not working?

转载 作者:行者123 更新时间:2023-12-01 05:46:52 26 4
gpt4 key购买 nike

我已经阅读了很多内容,似乎找不到有关我的问题的任何答案。我有一个自定义对象的 ArrayList,它实现了名为 listOfBuddiesParcelable。我正在尝试使用以下代码保存它的状态...

@Override
public void onSaveInstanceState(Bundle buddies){
buddies.putParcelable("buddies", listOfBuddies);
super.onSaveInstanceState(buddies);
}
@Override
public void onRestoreInstanceState(Bundle buddies) {
listOfBuddies = buddies.getParcelable("buddies");
super.onRestoreInstanceState(buddies);
}
public void onStart(Bundle buddies) {
super.onStart();
listOfBuddies = buddies.getParcelable("buddies");
}

@Override
public void onCreate(Bundle buddies) {
super.onCreate(buddies);
setContentView(R.layout.buddylist);
if(buddies != null){
listOfBuddies = buddies.getParcelable("buddies");
}
}

但是,重新启动 Acitivty 后,好友在 OnCreate 中始终返回 null。也许我的做法是错误的...但基本上我想在我的应用程序运行期间存储对象的 ArrayList。

最佳答案

我不确定这是否有效,但我确实有一个建议。不要让 ArrayList 本身实现 Parcelable,而是尝试将自定义对象设置为实现 Parcelable。然后使用 putParcelableArrayList 和 getParcelableArrayList 检索列表。

关于java - 安卓存储: OnSavedInstanceState not working?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5706397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com