0
我片段之間這樣的發送數據:Bundle.putParcelable()是否繼續引用對象,或者它是否克隆它?
public static final MyFragment newInstance(MyObject obj)
{
MyFragment f = new MyFragment();
// Get arguments passed in, if any
Bundle args = f.getArguments();
if (args == null) {
args = new Bundle();
}
// Add parameters to the argument bundle
args.putParcelable("obj", obj); // clone or referenced? MyObject implements parcelable
f.setArguments(args);
return f;
}
我發現,正在改變均勻我傳遞的對象。例如,當我按下後退按鈕並返回到最後一個片段時,我的對象具有剛剛離開的片段的當前狀態。
不Bundle.putParcelable()使對象的克隆?
它應該創建一個Parcelable對象的新實例,如果它通過一個Intent傳遞給另一個Activity或Service但不在同一個Activity中 – dzeikei 2013-08-14 02:19:20