Android 如何将对象发送到新片段

Android how to send objects to new fragment

我想将一些数据从片段发送到新片段。我知道这可以通过捆绑来完成,但我不知道如何使用它们,尤其是我自己的对象。

我用这样的新片段替换我的旧片段:

Fragment newFragment = new SecondFragment();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.frame_container, newFragment);
transaction.addToBackStack("saveState");
transaction.commit();

所以现在我想将此数据发送到 "newFragment"。

private List<MyObject> objectList;

如何将此 objectList 放入新的 Bundle 中?

编辑:

另外,如何将旧片段中的包发送到新片段?

使用 GSON 库:

您的自定义对象必须实现 Parcelable。 Parcelable 是一种告诉 Android 在通过 Bundle 传递时如何重建自定义对象的方法。 http://developer.android.com/reference/android/os/Parcelable.html

一旦您的对象实现了 Parcelable,您就可以使用 putParcelableArrayList(String key, ArrayList value)

将您的列表放入 Bundle 中

第一次有点棘手,但你会成功的 =) 有很多可用的教程。