zoukankan      html  css  js  c++  java
  • viewpager加fragment可滑动加radio跟随滑动

    public class MainActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener, ViewPager.OnPageChangeListener {
        private ArrayList<Fragment> arrayList;
        private FragmentManager manager;
        private RadioGroup radioGroup;
        private RadioButton[] radioButtons;
        private ViewPager viewPager;


        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            viewPager= (ViewPager) findViewById(R.id.main_vp);
            radioGroup= (RadioGroup) findViewById(R.id.main_rg);
            manager=getSupportFragmentManager();
            arrayList=new ArrayList<>();
            Fragment1 fragment1=new Fragment1();
            Fragment2 fragment2=new Fragment2();
            Fragment3 fragment3=new Fragment3();
            Fragment4 fragment4=new Fragment4();
            Fragment5 fragment5=new Fragment5();
            arrayList.add(fragment1);
            arrayList.add(fragment2);
            arrayList.add(fragment3);
            arrayList.add(fragment4);
            arrayList.add(fragment5);
            Main_Adapter adapter=new Main_Adapter(manager,arrayList);
            viewPager.setAdapter(adapter);
            radioButtons=new RadioButton[radioGroup.getChildCount()];
            for (int i = 0; i < radioButtons.length; i++) {
                radioButtons[i]= (RadioButton) radioGroup.getChildAt(i);
            }
            radioButtons[0].setChecked(true);
            radioGroup.setOnCheckedChangeListener(this);
            viewPager.setOnPageChangeListener(this);
        }

        @Override
        public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
            for (int j = 0; j < radioButtons.length; j++) {
                if (radioButtons[j].getId()==checkedId){
                    viewPager.setCurrentItem(j);
                }

            }
        }

        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int position) {
            radioButtons[position].setChecked(true);
        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    }

  • 相关阅读:
    jQuery的deferred对象详解 jquery回调函数
    Table does not have the identity property. Cannot perform SET operation.
    SQLServer中merge函数用法详解
    jQuery事件命名空间多事件绑定自定义事件js 命名空间 javascript命名空间
    you have mixed tabs and spaces fix this
    java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
    SQLServer 窗口函数
    TFS中查看我的所有签入迁出记录 TFS 怎么查看所有的修改
    日历控件My97DatePicker WdatePicker屏蔽 onchange的解决方法
    【Python】生成词云
  • 原文地址:https://www.cnblogs.com/la66/p/7883585.html
Copyright © 2011-2022 走看看