framelayout页面切换

framelayout页面切换,先继承FragmentActivity

public class MainActivity extends FragmentActivity {

private FrameLayout feame_layout;
private RadioGroup radio_group;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
//初始化控件

    feame_layout = findViewById(R.id.feame_layout);
    radio_group = findViewById(R.id.radio_group);

    radio_group.check(radio_group.getChildAt(0).getId());

//先写两个Fragment然后弄到这里来

    final FragmentOneActivity  oneActivity = new FragmentOneActivity();
    final FragmentTwoActivity twoActivity = new FragmentTwoActivity();

    final FragmentManager manager = getSupportFragmentManager();
    manager.beginTransaction()
            .add(R.id.feame_layout,oneActivity)
            .add(R.id.feame_layout , twoActivity)
            .commit();
            
//默认第一个页面展示,第二个页面隐藏

    manager.beginTransaction().hide(twoActivity).show(oneActivity).commit();
    
//加点击事件

    radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            switch (checkedId){
                case R.id.radio0:
                    manager.beginTransaction().hide(twoActivity).show(oneActivity).commit();
                    break;
                    case R.id.radio1:
                    manager.beginTransaction().hide(oneActivity).show(twoActivity).commit();
                    break;
            }
        }
    });
}
}
发布了19 篇原创文章 · 获赞 12 · 访问量 3626

猜你喜欢

转载自blog.csdn.net/a506656675/article/details/89438262