private Frag3 f3; private Frag2 f2; private Frag4 f4; private RadioGroup rg; private Frag1 f; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rg = (RadioGroup) findViewById(R.id.rg); f = new Frag1(); getSupportFragmentManager().beginTransaction().add(R.id.f1, f).commit(); //RadioGroup的点击事件 rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, @IdRes int i) { hideFragments(); FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); switch (i) { case R.id.rb: fragmentTransaction.show(f).commit(); break; case R.id.rb1: if (f2 == null) { f2 = new Frag2(); fragmentTransaction.add(R.id.f1, f2).commit(); } else { fragmentTransaction.show(f2).commit(); } break; case R.id.rb2: if (f3 == null) { f3 = new Frag3(); fragmentTransaction.add(R.id.f1, f3).commit(); } else { fragmentTransaction.show(f3).commit(); } break; case R.id.rb3: if (f3 == null) { f4 = new Frag4(); fragmentTransaction.add(R.id.f1, f4).commit(); } else { fragmentTransaction.show(f3).commit(); } break; } } }); } //隐藏的方法 public void hideFragments() { if (f != null && f.isAdded()) { getSupportFragmentManager().beginTransaction().hide(f).commit(); } if (f2 != null && f2.isAdded()) { getSupportFragmentManager().beginTransaction().hide(f2).commit(); } if (f3 != null && f3.isAdded()) { getSupportFragmentManager().beginTransaction().hide(f3).commit(); } }
Fragment的隐藏于显示
最新推荐文章于 2025-04-25 00:15:00 发布