我有一个实现Parcelable接口的对象。Bundle.putParcelable(String key,Parcelable value)和Intent.putExtra(String name,Parcelable value)差异
案例1:
我有一个活动A和B.我想从一个物体传递使用Intent.putExtra(String name, Parcelable value)
所以在活动B,当我得到对象到B和改变一些领域,并得到回A对象的领域保持不变。这意味着通过Intent.putExtra(String name, Parcelable value)
传递对象后,将创建一个新的对象实例。
案例2:
我有一个包含对象列表的活动,也是活动具有ViewPager与片段。我创建片段并传递给它对象Bundle.putParcelable(String key, Parcelable value)
因此,当我获取对象并更改某些字段(int Fragment)时,放置在列表中(在Activity中)的对象也发生了更改。所以这意味着对象还没有被创建,只是引用已经传递给fragment。
有人可以解释一下关于Bundle.putParcelable(String key, Parcelable value)
和Intent.putExtra(String name, Parcelable value)
的奇怪行为吗?