应用程序有两个Tabs,Tab A和Tab B都扩展了Fragment。现在我的问题是,当我点击Tab B的列表项时,应该在选项卡中调用一个新的Fragment C.使用以下代码,我可以调用Fragment C,但不能在选项卡中。
Intent intent = new Intent();
intent.setClass(getActivity(), C.class);
startActivity(intent);
当我使用活动时,我可以通过使用ActivityGroup来解决我的问题。片段中是否有类似的方式。
答案 0 :(得分:4)
尝试使用此代码点击列表项
private void stackAFragment() {
Fragment f;
f = new MedicationOrderFragment();
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.main_details_fragment_container, f);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
ft.addToBackStack(null);
ft.commit();
}
答案 1 :(得分:0)
尝试替换你的片段:
protected void replaceDataFragment(Fragment fragment){
android.app.FragmentTransaction ftr = getFragmentManager().beginTransaction();
ftr.replace(R.id.data<id of your fragment layout>, fragment);
ftr.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
ftr.commit();
}
答案 2 :(得分:0)
使用此代码,您可以使用意图启动新活动。 尝试在片段中使用它:
getSupportFragmentManager().beginTransaction().replace(
R.id.my_container_in_xml, new MyFragment(), 0).commit();