主頁面幀佈局的用法

public class MainActivity extends AppCompatActivity {

    private FrameLayout fl_main;
    private RadioGroup group;
    private ArrayList<Fragment> fragments;
    private FragmentManager supportFragmentManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        fl_main = (FrameLayout) findViewById(R.id.fl_main);
        group = (RadioGroup) findViewById(R.id.group);
        initFragments();
        supportFragmentManager = getSupportFragmentManager();
        supportFragmentManager.beginTransaction().add(R.id.fl_main, fragments.get(0)).commit();

        //點擊按鈕處理切換邏輯
        group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int id) {
                //i 就是你點擊的那個控件的id
                //supportFragmentManager可以複用,Transaction不可複用,每次提交後事物就結束了;
                switch (id) {
                    case R.id.but1:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main, fragments.get(0)).commit();
                        break;
                    case R.id.but2:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main, fragments.get(1)).commit();

                        break;
                    case R.id.but3:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main, fragments.get(2)).commit();

                        break;
                    case R.id.but4:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main, fragments.get(3)).commit();

                        break;
                    case R.id.but5:
                        supportFragmentManager.beginTransaction().replace(R.id.fl_main, fragments.get(4)).commit();

                        break;
                }
            }
        });

    }

    private void initFragments() {
        fragments = new ArrayList<>();
        fragments.add(new Main1Fragment());
        fragments.add(new Main2Fragment());
        fragments.add(new Main3Fragment());
        fragments.add(new Main4Fragment());
        fragments.add(new Main5Fragment());
    }
發佈了40 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章