这是布局 (控件):
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="bawe.day0919.MainActivity"> <RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_alignParentBottom="true" android:id="@+id/rg" > <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/rg1" android:text="联系人" android:button="@null" android:layout_weight="1" android:checked="true" android:gravity="center" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/rg2" android:text="消息" android:button="@null" android:layout_weight="1" android:gravity="center" /> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/rg3" android:text="我" android:button="@null" android:layout_weight="1" android:gravity="center" /> </RadioGroup> <android.support.v4.view.ViewPager android:layout_above="@id/rg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/pager" ></android.support.v4.view.ViewPager> </RelativeLayout>
//==================================================以下是主要代码=================================================================
public class MainActivity extends FragmentActivity { private ViewPager pa; private RadioGroup rg; private List<Fragment> data=new ArrayList<Fragment>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); pa = (ViewPager) findViewById(R.id.pager); rg = (RadioGroup) findViewById(R.id.rg); //添加 data.add(new Xingweng()); data.add(new Guanzhu()); data.add(new Dongtai()); //ViewPager控件 pa = (ViewPager) findViewById(R.id.pager); //监听事件 pa.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageSelected(int arg0) { //改变radiobutton选中状态 rg.check(rg.getChildAt(arg0).getId()); } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageScrollStateChanged(int arg0) { // TODO Auto-generated method stub } }); //设置适配器 Myadpader myadpader = new Myadpader(getSupportFragmentManager()); pa.setAdapter(myadpader); //点击事件 rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { switch (checkedId) { case R.id.rg1: pa.setCurrentItem(0); break; case R.id.rg2: pa.setCurrentItem(1); break; case R.id.rg3: pa.setCurrentItem(2); break; default: break; } } }); } //适配器 public class Myadpader extends FragmentPagerAdapter { public Myadpader(FragmentManager fm) { super(fm); // TODO Auto-generated constructor stub } @Override public Fragment getItem(int arg0) { // TODO Auto-generated method stub return data.get(arg0); } @Override public int getCount() { // TODO Auto-generated method stub return data.size(); } } }