viewpage+radiogroup

来源:互联网 发布:靠谱的程序员培训机构 编辑:程序博客网 时间:2024/06/05 17:18
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    tools:context="com.bwie.gaoxiangxue.gaoxiangxue1511m20171202.MainActivity">    <android.support.v4.view.ViewPager        android:id="@+id/viewpager"        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="9"        />    <RadioGroup        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="1"        android:id="@+id/rg"        android:orientation="horizontal">        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_weight="1"            android:id="@+id/but_01"            android:padding="10dp"            android:gravity="center"            android:text="首页"            android:button="@null"            android:checked="true"            />        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_weight="1"            android:id="@+id/but_02"            android:padding="10dp"            android:gravity="center"            android:text="主题"            android:button="@null"            />        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_weight="1"            android:id="@+id/but_03"            android:padding="10dp"            android:gravity="center"            android:text="抢购"            android:button="@null"            />        <RadioButton            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_weight="1"            android:id="@+id/but_04"            android:padding="10dp"            android:gravity="center"            android:text="我的"            android:button="@null"            />    </RadioGroup></LinearLayout>
package com.bwie.gaoxiangxue.gaoxiangxue1511m20171202;import android.graphics.Color;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.widget.FrameLayout;import android.widget.RadioButton;import android.widget.RadioGroup;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity  {    private FrameLayout fragment;    private RadioGroup rg;    private RadioButton but_01;    private RadioButton but_02;    private RadioButton but_03;    private RadioButton but_04;    private List<Fragment> list;    private Fragment01 fragment01;    private Fragment02 fragment02;    private Fragment03 fragment03;    private Fragment04 fragment04;    private ViewPager viewPager;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        viewPager = (ViewPager) findViewById(R.id.viewpager);        rg = (RadioGroup) findViewById(R.id.rg);        but_01 = (RadioButton) findViewById(R.id.but_01);        but_02 = (RadioButton) findViewById(R.id.but_02);        but_03 = (RadioButton) findViewById(R.id.but_03);        but_04= (RadioButton) findViewById(R.id.but_04);        list=new ArrayList<Fragment>();        fragment01=new Fragment01();        fragment02=new Fragment02();        fragment03=new Fragment03();        fragment04=new Fragment04();        list.add(fragment01);        list.add(fragment02);        list.add(fragment03);        list.add(fragment04);        //创建适配器        viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {            @Override            public int getCount() {                // TODO Auto-generated method stub                return list.size();            }            @Override            public Fragment getItem(int arg0) {                // TODO Auto-generated method stub                return list.get(arg0);            }        });        //对ViewPager设置监听 可以控制radiobutton的切换        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {            @Override            public void onPageSelected(int arg0) {                // TODO Auto-generated method stub                switch (arg0) {                    case 0:                        rg.check(R.id.but_01);                        break;                    case 1:                        rg.check(R.id.but_02);                        break;                    case 2:                        rg.check(R.id.but_03);                        break;                    case 3:                        rg.check(R.id.but_04);                        break;                    default:                        break;                }            }            @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            }        });        rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {            @Override            public void onCheckedChanged(RadioGroup group, int checkedId) {                switch (checkedId){                    case R.id.but_01:                        but_01.setTextColor(Color.RED);                        but_01.setBackgroundColor(Color.GREEN);                        but_02.setTextColor(Color.BLUE);                        but_03.setTextColor(Color.BLUE);                        but_04.setTextColor(Color.BLUE);                        viewPager.setCurrentItem(0);                    break;                    case R.id.but_02:                        but_01.setTextColor(Color.BLUE);                        but_02.setTextColor(Color.BLACK);                        but_03.setTextColor(Color.BLACK);                        but_04.setTextColor(Color.BLACK);                        viewPager.setCurrentItem(1);                        break;                    case R.id.but_03:                        but_03.setTextColor(Color.BLACK);                        but_01.setTextColor(Color.RED);                        but_02.setTextColor(Color.RED);                        but_04.setTextColor(Color.RED);                        viewPager.setCurrentItem(2);                        break;                    case R.id.but_04:                        but_04.setTextColor(Color.GREEN);                        but_01.setTextColor(Color.RED);                        but_02.setTextColor(Color.BLUE);                        but_03.setTextColor(Color.BLUE);                        viewPager.setCurrentItem(3);                        break;                }            }        });    }}