使用片段事务发送捆绑包

时间:2013-03-11 00:07:39

标签: android android-fragments bundle

这是我的代码无效:

//以这种方式发送包:

        String topUser = String.valueOf(scores.get(arg2));

        Bundle data = new Bundle();
        data.putString("userprofile", topUser);

        FragmentTransaction t = getActivity().getSupportFragmentManager()
                .beginTransaction();
        SherlockListFragment mFrag = new ProfileFragment();
        mFrag.setArguments(data);
        t.replace(R.id.main_frag, mFrag);
        t.commit();

//检索这种方式:

        Bundle extras = getActivity().getIntent().getExtras();
        userName = extras.getString("userprofile");

基本上,没有收到数据。我是在正确的轨道上还是有更好的方法来做到这一点?

1 个答案:

答案 0 :(得分:29)

您应该使用Fragment类的getArguments()方法。因此,在Fragment

中加入以下内容
Bundle extras = getArguments();

参考:http://developer.android.com/reference/android/app/Fragment.html#getArguments()