これが機能していない私のコードです:
//この方法でバンドルを送信します:
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");
基本的に、データは受信されません。私は正しい軌道に乗っていますか、これを行うより良い方法はありますか?
FragmentクラスのgetArguments()
メソッドを使用する必要があります。だからあなたのFragment
の中に次のようなものを入れてください:
Bundle extras = getArguments();
リファレンス: http://developer.Android.com/reference/Android/app/Fragment.html#getArguments()