Fragment的切换方法

来源:互联网 发布:黑客帝国矩阵革命 bt 编辑:程序博客网 时间:2024/06/06 02:24


import android.os.Bundle;
import android.support.annotation.IdRes;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v7.app.AppCompatActivity;
import android.widget.RadioGroup;


import com.wzq.zhoukao_lx1.fragment.MainFragment1;
import com.wzq.zhoukao_lx1.fragment.MainFragment2;
import com.wzq.zhoukao_lx1.fragment.MainFragment3;
import com.wzq.zhoukao_lx1.fragment.MainFragment4;


import java.util.ArrayList;


public class MainActivity extends AppCompatActivity {
    //定义变量
    private ArrayList<Fragment> fragmentList = new ArrayList<Fragment>();
    private RadioGroup group;
    private FragmentManager supportFragmentManager;
    String TAG = "wzq";


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //初始化组件
        group = (RadioGroup) findViewById(R.id.group);
        initFragment();
        supportFragmentManager = getSupportFragmentManager();
        supportFragmentManager.beginTransaction().add(R.id.fl_main, fragmentList.get(0)).commit();
        group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, @IdRes int i) {
                switch (i) {
                    case R.id.but1:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main,fragmentList.get(0)).commit();
                        break;
                    case R.id.but2:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main,fragmentList.get(1)).commit();
                        break;
                    case R.id.but3:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main,fragmentList.get(2)).commit();
                        break;
                    case R.id.but4:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main,fragmentList.get(3)).commit();
                        break;
                }
            }
        });


    }


    private void initFragment() {
        MainFragment1 mainFragment1 = new MainFragment1();
        MainFragment2 mainFragment2 = new MainFragment2();
        MainFragment3 mainFragment3 = new MainFragment3();
        MainFragment4 mainFragment4 = new MainFragment4();
        fragmentList.add(mainFragment1);
        fragmentList.add(mainFragment2);
        fragmentList.add(mainFragment3);
        fragmentList.add(mainFragment4);
    }
}
原创粉丝点击