要先写四个布局和四个Fragment页面
MainActivity
package com.lwj.jinritoutiao;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.RadioGroup;
import com.lwj.jinritoutiao.fragment.Fragment_gridview;
import com.lwj.jinritoutiao.fragment.Fragment_listview;
import com.lwj.jinritoutiao.fragment.Fragment_morelistview;
import com.lwj.jinritoutiao.fragment.Fragment_xlistview;
public class MainActivity extends AppCompatActivity {
private FragmentManager manager;
private Fragment_listview fragment_listview;
private Fragment_gridview fragment_gridview;
private Fragment_xlistview fragment_xlistview;
private Fragment_morelistview fragment_morelistview;
private RadioGroup radioGroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//找控件
radioGroup = findViewById(R.id.rg1);
//获取管理者
manager = getSupportFragmentManager();
//开启
FragmentTransaction transaction = manager.beginTransaction();
//创建fragment对象
fragment_listview = new Fragment_listview();
fragment_gridview = new Fragment_gridview();
fragment_xlistview = new Fragment_xlistview();
fragment_morelistview = new Fragment_morelistview();
//添加
transaction.add(R.id.fm, fragment_listview);
transaction.add(R.id.fm, fragment_gridview);
transaction.add(R.id.fm, fragment_xlistview);
transaction.add(R.id.fm, fragment_morelistview);
//默认选中第一个
radioGroup.check(radioGroup.getChildAt(0).getId());
//显示及隐藏
transaction.show(fragment_listview).hide(fragment_gridview).hide(fragment_morelistview).hide(fragment_xlistview);
//提交
transaction.commit();
//监听事件
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
//开启
FragmentTransaction transaction1 = manager.beginTransaction();
switch (i) {
case R.id.rb1:
//显示及隐藏
transaction1.show(fragment_listview).hide(fragment_gridview).hide(fragment_morelistview).hide(fragment_xlistview);
break;
case R.id.rb2:
//显示及隐藏
transaction1.show(fragment_gridview).hide(fragment_listview).hide(fragment_morelistview).hide(fragment_xlistview);
break;
case R.id.rb3:
//显示及隐藏
transaction1.show(fragment_xlistview).hide(fragment_listview).hide(fragment_gridview).hide(fragment_morelistview);
break;
case R.id.rb4:
//显示及隐藏
transaction1.show(fragment_morelistview).hide(fragment_listview).hide(fragment_xlistview).hide(fragment_gridview);
break;
}
//提交
transaction1.commit();
}
});
}
}
效果图: