ViewPager加载fragment

来源:互联网 发布:网络维护外包合同 编辑:程序博客网 时间:2024/05/24 07:05
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        vp = (ViewPager) findViewById(R.id.vp);
        

        rg = (RadioGroup) findViewById(R.id.rg);


//radioButton的点击事件

        rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            
            int i=0;
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
            switch (checkedId) {
            case R.id.rb1:
                RadioButton rb1 = (RadioButton) findViewById(R.id.rb1);
                i=0;
                break;
            case R.id.rb2:
                RadioButton rb2 = (RadioButton) findViewById(R.id.rb2);
                i=1;
                break;
            case R.id.rb3:
                RadioButton rb3 = (RadioButton) findViewById(R.id.rb3);
                i=2;
                break;

            default:
                break;
            }
                vp.setCurrentItem(i);
            }
        });
        
        //viewPager的滑动事件
        vp.setOnPageChangeListener(new OnPageChangeListener() {
            
            @Override
            public void onPageSelected(int arg0) {
                switch (arg0) {
                case 0:
                    RadioButton rb1 = (RadioButton) findViewById(R.id.rb1);
                    rb1.setChecked(true);
                    break;
                case 1:
                    RadioButton rb2 = (RadioButton) findViewById(R.id.rb2);
                    rb2.setChecked(true);
                    break;
                case 2:
                    RadioButton rb3 = (RadioButton) findViewById(R.id.rb3);
                    rb3.setChecked(true);
                    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
                
            }

        });

//加载fragment

        vp.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {

            @Override
            public int getCount() {
                // TODO Auto-generated method stub
                return 3;
            }

            @Override
            public Fragment getItem(int arg0) {
                switch (arg0) {
                case 0:
                    Frag1 f1=new Frag1();
                    return f1;
                case 1:
                    Frag2 f2=new Frag2();
                    return f2;
                case 2:
                    Frag3 f3=new Frag3();
                    return f3;
                    

                default:
                    break;
                }
                return null;
            }
        });
    }

}

原创粉丝点击