radiobutton+viewpager滑动

来源:互联网 发布:雄鹰1911走淘宝暗语 编辑:程序博客网 时间:2024/06/04 18:17
package com.bwei.Test.zhangjian20170823yuekaolianxi.Activity;import android.graphics.Color;import android.os.Bundle;import android.support.annotation.IdRes;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.widget.RadioButton;import android.widget.RadioGroup;import com.bwei.Test.zhangjian20170823yuekaolianxi.Fragment.MyFragment_A;import com.bwei.Test.zhangjian20170823yuekaolianxi.Fragment.MyFragment_B;import com.bwei.Test.zhangjian20170823yuekaolianxi.R;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity {    private ViewPager viewPager;    private RadioGroup radioGroup;    private RadioButton radioButton,radioButton2;    private List<Fragment> list;    private List<RadioButton> listbut;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        viewPager= (ViewPager) findViewById(R.id.vp);        radioGroup= (RadioGroup) findViewById(R.id.rg);        radioButton= (RadioButton) findViewById(R.id.rb);        radioButton2= (RadioButton) findViewById(R.id.rb2);        list=new ArrayList<>();        list.add(new MyFragment_A());        list.add(new MyFragment_B());        listbut=new ArrayList<>();        listbut.add(radioButton);        listbut.add(radioButton2);        for (int i=0;i<listbut.size();i++){            if (i==0){                listbut.get(i).setBackgroundColor(Color.YELLOW);            }        }        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {            @Override            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {                for (int i=0;i<listbut.size();i++){                    listbut.get(i).setBackgroundColor(Color.WHITE);                    if (i==position){                        listbut.get(position).setBackgroundColor(Color.YELLOW);                    }                }            }            @Override            public void onPageSelected(int position) {            }            @Override            public void onPageScrollStateChanged(int state) {            }        });        radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {            @Override            public void onCheckedChanged(RadioGroup group, @IdRes int checkedId) {                switch (checkedId){                    case R.id.rb:                        viewPager.setCurrentItem(0);                        break;                    case R.id.rb2:                        viewPager.setCurrentItem(1);                        break;                }            }        });        MyAdapterFragment adapter=new MyAdapterFragment(getSupportFragmentManager());        viewPager.setAdapter(adapter);    }    class MyAdapterFragment extends FragmentPagerAdapter{        public MyAdapterFragment(FragmentManager fm) {            super(fm);        }        @Override        public Fragment getItem(int position) {            return list.get(position);        }        @Override        public int getCount() {            return list.size();        }    }}
阅读全文
0 0