这是一件困扰我已经有一段时间的事情。
如果我们在活动中拥有某种 Parcelable 对象,并将其使用 Bundle 传递到 fragment 中,我一直认为我们在 fragment 中接收到的对象实际上是一个新对象。然而,今天运行了一些测试后,似乎 fragment 中的对象实际上与活动中的对象相同。
这是正确的吗?
编辑:小小的澄清。我不是指对象的值。我指的是“==”比较。
这是一件困扰我已经有一段时间的事情。
如果我们在活动中拥有某种 Parcelable 对象,并将其使用 Bundle 传递到 fragment 中,我一直认为我们在 fragment 中接收到的对象实际上是一个新对象。然而,今天运行了一些测试后,似乎 fragment 中的对象实际上与活动中的对象相同。
这是正确的吗?
编辑:小小的澄清。我不是指对象的值。我指的是“==”比较。
Parcelable
,然后使用Intent
将其传递到另一个活动中时,代码如下:Intent i = new Intent();
i.putExtra("name_of_extra", myParcelableObject);
在另一个活动或片段中接收到的对象是您之前传递的确切对象。您可以通过以下方式接收对象:
Intent i = getIntent();
MyParcelable myParcelableObject = (MyParcelable)i.getParcelableExtra("name_of_extra");