我正处于必须在活动之间共享变量的情况......但我有一个疑问。哪个更好:Parcelable对象或在自定义Application对象上设置它。
当某些事情将在下一个活动中使用时,我只是将其作为Parcelable对象传递,当它将在多个活动中使用时,我将它放在Application上下文中。
你怎么看?这样对吗?哪个性能更好?谢谢!
答案 0 :(得分:1)
我认为您的方法完全有效。
如果它类似于在每个Activity中访问的用户对象,则将其存储在自定义Application对象中,但如果应用程序在后台时应用程序对象被销毁,请务必重新创建对象。
如果它类似于路径或选项,则用户决定下一个活动如何工作,并使用Intent发送它。
还有一些类不容易放入Intent。我有一个附加到应用程序类的ImageCache,它允许在活动更改之间将图像像用户profil图像保存在内存中,而无需多次解码位图。如果它们的设计方式不能填满所有可用的内存,那么它们也非常适合自定义应用程序类。
答案 1 :(得分:0)
我建议在活动与额外内容之间共享数据。如果它是一个自己的类,它必须实现Serializable。
答案 2 :(得分:0)
如果你感到懒惰,请使用应用程序的单例模式。
但是,如果你想更智能地编码,请使用Parcelable。