场景:MainActivity的Fragment有个button,点击button,跳转到CategoryActivity(有个listview),点击item项,希望把item值回显到Fragment中。
问题:我一开始用事务提交,Activity set Arguments,Fragment接收get Arguments,但是一直都报空指针异常,就是get Arguments得到的Bundle是空值,后来我发现Fragment中replace(id_container),一直是找不到。但是这个容器,不就是MainActivity中FrameLayout的id吗?所以我不明白,贴下代码,希望有人帮忙解决。
categoryAcitivity: ReleaseFragment fragment = new ReleaseFragment(); Bundle bundle1 = new Bundle(); bundle1.putString("category", text); fragment.setArguments(bundle1); FragmentManager frgmentManager = getFragmentManager(); FragmentTransaction beginTransaction = frgmentManager.beginTransaction(); beginTransaction.replace(R.id.id_content, fragment); beginTransaction.commit();
ReleaseFragment: String content = getArguments().getString("category"); tvCg.setText(content);
MainAcitivity动态加载Fragment:
布局:Main.xml中布局
<FrameLayout
android:id="@+id/id_content"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
></FrameLayout>