Fragment+Viewpager结合实现底部页面滑动

来源:互联网 发布:c语言return返回值给谁 编辑:程序博客网 时间:2024/06/06 04:37

在MainActivity中

vp = (ViewPager) findViewById(R.id.vp);
rg = (RadioGroup) findViewById(R.id.rg);
vp.setAdapter(new My(getSupportFragmentManager()));
 
rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
int i=0;
switch (checkedId) {
case R.id.sy:
i=0;
break;


case R.id.ss:
i=1;
break;
case R.id.my:
i=2;
break;

}
vp.setCurrentItem(i);
}
});
vp.setOnPageChangeListener(new OnPageChangeListener() {

@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
switch (arg0) {
case 0:
RadioButton sy = (RadioButton) findViewById(R.id.sy);
sy.setChecked(true);

break;
case 1:
RadioButton sc = (RadioButton) findViewById(R.id.ss);
sc.setChecked(true);

break;
case 2:
RadioButton my = (RadioButton) findViewById(R.id.my);
my.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

}
});


}

class My extends FragmentPagerAdapter{


public My(FragmentManager fm) {
super(fm);
// TODO Auto-generated constructor stub
}


@Override
public Fragment getItem(int arg0) {
// TODO Auto-generated method stub

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;
}


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

}


简单的布局文件



    
    <android.support.v4.view.ViewPager
        android:id="@+id/vp"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        
        />
        
        <RadioGroup 
            android:id="@+id/rg"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            
            
            
            >
            
            <RadioButton 
                android:id="@+id/sy"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:button="@null"
                android:text="首页"
                
                />
               <RadioButton 
                android:id="@+id/ss"
         android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:button="@null"
                android:text="搜索"
                
                />
                  <RadioButton 
                android:id="@+id/my"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:button="@null"
                android:text="我的"
                
                />
            
            
     </RadioGroup>
            
            
   
            
            
            
            
        

阅读全文
0 0
原创粉丝点击