首页 > 解决方案 > 保存 ArrayList 时出错在保存的实例中

问题描述

实际上,我想将我保存LinkedList在已保存的实例中,这样当用户再次打开应用程序时,他就可以访问已经存储在LinkedList. 我知道我们需要转换LinkedListArrayList才能存储它。保存时ArrayList它给了我一个错误

putParcelableArrayList() 中的第二个参数类型错误。找到 ' java.util.ArrayList<java.lang.String>',必填java.util.ArrayList<?extends android.os.Parcelable>

@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
    super.onSaveInstanceState(savedInstanceState);
    ArrayList<String> arrayList = new ArrayList<String>(FavoriteQuotes);
    savedInstanceState.putParcelableArrayList("quotes",arrayList);
}

我知道有可用的解决方案,但它似乎对我没有帮助。谢谢。

标签: androidparcelableandroid-savedstate

解决方案


你需要这样做

ArrayList<String> arrayList = new ArrayList<String>(FavoriteQuotes);
savedInstanceState.putStringArrayList("key",arrayList );

推荐阅读