我一直在阅读Parcelables,我读的越多,我就越感到困惑。
我正在尝试的是以下
第4点的问题:
感谢您抽出宝贵时间阅读。
答案 0 :(得分:1)
有很多方法可以将数据传递到下一个活动,哪种方式最适合您,取决于您的数据有多复杂。一些选择:
Parcelable
只是传递复杂对象的有效方法。如果你走这条路线,那么你会创建一个实现Parcelable
的新对象。您的写入方法可能非常复杂。如果你有一个复杂的对象树,只需让每个对象实现Parcelable
并遵从该对象的writeToParsel
方法来写出对象树的那一部分。
一种更简单但效率更低的方法是让所有对象都实现Serializable
。在那里为您完成序列化和反序列化,但它明显慢于Parcelable
实现。
如果您的活动只需要一些原始信息,您也可以将它们作为自己的额外信息传递。
最后,您可以使用您的Application
类扩展或其他单例来存储复杂的数据结构,只需传递新Activity
所需的一些信息即可查找其余的数据。这样可以减少需要传递的数据量,并可以帮助您解决正在启动和停止的活动的问题。