fragment和viewpager的结合








package com.example.fragment_viewpager;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends FragmentActivity {

   private ViewPager viewPager;
   private List<Fragment> fragments;
   private RadioGroup radioGroup;
   private TextView text1,text2,text3;
   
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        //获取资源id
        viewPager = (ViewPager) findViewById(R.id.viewpager);
        radioGroup = (RadioGroup) findViewById(R.id.group);
        text1 = (TextView) findViewById(R.id.text1);
        text2 = (TextView) findViewById(R.id.text2);
        text3 = (TextView) findViewById(R.id.text3);

        //添加数据源
        fragments = new ArrayList<Fragment>();
        fragments.add(new Fragemnt01());
        fragments.add(new Fragemnt02());
        fragments.add(new Fragemnt03());

        //创建适配器,
      //        viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
      //       //条目总数
      //       @Override
      //       public int getCount() {
      //          return fragments.size();
      //       }
      //       //得到条目
      //       @Override
      //       public Fragment getItem(int arg0) {
      //          return fragments.get(arg0);
      //       }
      //    });
      //
      //        //滑动切换
        viewPager.setOnPageChangeListener(new OnPageChangeListener() {
         
         @Override
         public void onPageSelected(int arg0) {
            // TODO Auto-generated method stub
            switch (arg0) {
            case 0:
               radioGroup.check(R.id.button01);
               //滑动设置游标颜色 
               text1.setBackground(getResources().getDrawable(R.color.black));
               text2.setBackground(getResources().getDrawable(R.color.white));
               text3.setBackground(getResources().getDrawable(R.color.white));
               break;
            case 1:
               radioGroup.check(R.id.button02);
               
               text1.setBackground(getResources().getDrawable(R.color.white));
               text2.setBackground(getResources().getDrawable(R.color.black));
               text3.setBackground(getResources().getDrawable(R.color.white));
               break;
            case 2:
               radioGroup.check(R.id.button03);
               
               text1.setBackground(getResources().getDrawable(R.color.white));
               text2.setBackground(getResources().getDrawable(R.color.white));
               text3.setBackground(getResources().getDrawable(R.color.black));
               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
            
         }
      });
        //点击进行切换
        radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
         
         @Override
         public void onCheckedChanged(RadioGroup group, int checkedId) {
            // TODO Auto-generated method stub
            switch (checkedId) {
            case R.id.button01:
               viewPager.setCurrentItem(0);
               break;
            case R.id.button02:
               viewPager.setCurrentItem(1);
               break;
            case R.id.button03:
               viewPager.setCurrentItem(2);
               break;

            default:
               break;
            }
         }
      });
        
        
    }
}
发布了48 篇原创文章 · 获赞 45 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/hubianyu/article/details/82348134
今日推荐