Android 安卓碎片可以';我看不懂。Bundle总是空的

Android 安卓碎片可以';我看不懂。Bundle总是空的,android,android-fragments,null,bundle,Android,Android Fragments,Null,Bundle,我编写了一个自定义静态方法来创建片段。Fragment是android.support.v4.app.Fragment的子类 创建我的片段的方法如下 public static AddItemFragment newInstance(UUID listId, UUID itemId){ AddItemFragment fragment=new AddItemFragment(); Bundle bundle=new Bundle(); bundl

我编写了一个自定义静态方法来创建片段。Fragment是android.support.v4.app.Fragment的子类

创建我的片段的方法如下

public static AddItemFragment newInstance(UUID listId, UUID itemId){

        AddItemFragment fragment=new AddItemFragment();
        Bundle bundle=new Bundle();
        bundle.putSerializable(EXTRA_DATA_LIST_ID,listId);
        bundle.putSerializable(EXTRA_DATA_ITEM_ID, itemId);
        fragment.setArguments(bundle);
        return fragment;
 }
在我的onCreate方法中,我试图从bundle读取数据

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mListId = (getArguments().getSerializable(EXTRA_DATA_LIST_ID) == null ? null : (UUID) getArguments().getSerializable(EXTRA_DATA_LIST_ID));
    mItemId = (getArguments().getSerializable(EXTRA_DATA_ITEM_ID) == null ? null : (UUID) getArguments().getSerializable(EXTRA_DATA_ITEM_ID));
}    

问题是getArguments()方法从不返回bundle。它总是返回NULL。我不明白为什么。savedInstanceState也为NULL。

我正在使用活动的savedInstanceState束覆盖片段中的束集,此时该束集为NULL


DUH…

在onCreate方法中,尝试调用getIntent().getExtras()而不是getArguments。@svager您能演示如何实例化此片段的代码吗?您能解释更多吗?我还是不明白为什么