gpt4 book ai didi

java - 使用 Intent 在 Activity 之间传递自定义对象

转载 作者:行者123 更新时间:2023-12-02 12:42:31 24 4
gpt4 key购买 nike

我想知道创建一个继承自 Intent 类并重载 putExtra 方法的类是否有意义,允许传递自定义对象,而不是使用 Parcelable。这是明智之举吗?是不是比传递包裹慢很多?

我希望这个过程非常快,将对象保留在内存中,根据我的理解,包裹使用序列化。

最佳答案

这是一个有趣的问题。 Intent 是一个通用数据包装器,除其他功能外,它还允许您在进程之间传输数据,这就是为什么您需要可打包中的数据形式。事实上, Intent 本身是可打包的,要实现一个适当的子类,您需要打包所有添加的字段,并且基本上将以相同的 Intent 类结束,只是有一些公开的字段。这里有一个Intent的子类供引用:http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.1_r1/android/content/pm/LabeledIntent.java

所以我不建议您采用这种方法。如果您想要在不同组件之间发送数据的替代方法,我建议您使用 EventBus 的概念并创建类似 https://lorentzos.com/rxjava-as-event-bus-the-right-way-10a36bdd49ba 的内容。

关于java - 使用 Intent 在 Activity 之间传递自定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44884570/

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