Bundle包含数据,但在Fragment中它是Null

时间:2014-11-20 16:46:41

标签: android android-fragments fragment

我使用bundlefragment从活动传递到setArgument,当我使用fragmentgetArgument检索回来时,我发现它是null,尽管它有价值。

在下面的代码中,我将展示如何检索bundle活动中的fragment

为了澄清,我有activity_1bundle传递给activity_2。在activity_2我实例化2 fragments并将其分配给actionTabs。从activity_2开始,我检查了bundle并且它有值,根据该测试我将它们传递给2 fragments。在其中一个Fragments我使用getArgument检索它,它是null。请参阅下面的代码,以了解如何检索它。

Code_Fragment

public class Sub_Frag extends Fragment {
private final Bundle dataBundle = getArguments();
...
...
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle  
savedInstanceState) {
//here i check if the bundle is null or not, and it is null

1 个答案:

答案 0 :(得分:1)

创建片段时应该调用它。将第2行更改为:

private Bundle dataBundle;

并在onCreateView中获取参数:

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle  
savedInstanceState) {

    dataBundle = getArguments();

}