ViewPager+Fragment+RadioGroup实现页面联动\点击切换
来源:互联网 发布:新疆网络屏蔽 编辑:程序博客网 时间:2024/05/22 03:22
废话不多说 上源码
MianActivity.java
public class MainActivity extends FragmentActivity {
/** * 声明viewpager */@ViewInject(R.id.vp_veiwpager)private ViewPager mViewPager;/** * 声明list集合 */private List<Fragment> fragmentList;/** * 声明radiogroup相关按键 */@ViewInject(R.id.rg_radiogroup)private RadioGroup radioGroup;@ViewInject(R.id.rb_bookstore)private RadioButton rbStore;@ViewInject(R.id.rb_bookcart)private RadioButton rbCart;@ViewInject(R.id.rb_lately)private RadioButton rbLately;@ViewInject(R.id.rb_mine)private RadioButton rbMine;/** * 声明viewpager 的适配器 */private MViewPagerAdapter mViewPagerAdapter;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化控件 x.view().inject(this); // 设置adapter setAdapter(); // 设置listener setListener();}/** * 为viewpager设置适配器 */private void setAdapter() { fragmentList = new ArrayList<Fragment>(); fragmentList.add(new FragmentStore()); fragmentList.add(new FragmentCart()); fragmentList.add(new FragmentLately()); fragmentList.add(new FragmentMine()); mViewPagerAdapter = new MViewPagerAdapter(getSupportFragmentManager(), fragmentList); mViewPager.setAdapter(mViewPagerAdapter); // 启动程序直接加载4个界面的数据 mViewPager.setOffscreenPageLimit(4);}/** * 设置viewpager跟radiogroup的监听跟联动 */private void setListener() {// radioGroup设置onCheckedChangeListener radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { switch (checkedId) { case R.id.rb_bookstore: mViewPager.setCurrentItem(0);// setCurrentItem 设置当前项目为0 break; case R.id.rb_bookcart: mViewPager.setCurrentItem(1);// setCurrentItem 设置当前项目为1 break; case R.id.rb_lately: mViewPager.setCurrentItem(2);// setCurrentItem 设置当前项目为2 break; case R.id.rb_mine: mViewPager.setCurrentItem(3);// setCurrentItem 设置当前项目为3 break; } } }); mViewPager.setOnPageChangeListener(new OnPageChangeListener() { //为viewpager配置onPageChangeListener方法 @Override public void onPageSelected(int arg0) { switch (arg0) { case 0: rbStore.setChecked(true); break; case 1: rbCart.setChecked(true); break; case 2: rbLately.setChecked(true); break; case 3: rbMine.setChecked(true); break; } } @Override public void onPageScrolled(int arg0, float v, int arg2) { if(v!=0){ //设置第四个fragment的透明度 FragmentMine fragment = (FragmentMine) fragmentList.get(3); fragment.slide(v); } } @Override public void onPageScrollStateChanged(int arg0) { } });}
}
ViewPagerAdapter.java
public class MViewPagerAdapter extends FragmentPagerAdapter{
private List<Fragment> fragmentList;public MViewPagerAdapter(FragmentManager fm, List<Fragment> fragmentList) { super(fm); this.fragmentList = fragmentList;}@Overridepublic Fragment getItem(int arg0) { // TODO Auto-generated method stub return fragmentList.get(arg0);}@Overridepublic int getCount() { // TODO Auto-generated method stub return fragmentList.size();}
}
Fragment
public class FragmentCart extends Fragment{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_cart, null);
return view;
}
}
0 0
- ViewPager+Fragment+RadioGroup实现页面联动\点击切换
- 滑动或点击按钮切换页面 ViewPager+RadioGroup+Fragment
- Fragment+ViewPager+RadioGroup实现的页面简单切换
- radiogroup+viewpager+fragment联动,
- ViewPager+RadioGroup实现标题栏切换,Fragment切换
- Android 使用ViewPager和RadioGroup配合Fragment实现标签页,可点击按钮切换、滑动切换。
- 点击RadioGroup切换Fragment
- Android ViewPager加Fragment实现滑动或者点击页面切换
- ViewPager和RadioGroup实现页面切换效果
- RadioGroup+Fragment实现页面之间的切换
- RadioGroup+Fragment实现页面之间的切换
- ViewPager与Fragment联动实现界面切换‘’
- Fragment+RadioGroup点击切换Fragment
- ViewPager+Fragment实现页面切换
- Viewpager+Fragment实现页面切换
- 底部导航栏实现页面的切换(三):Fragment + RadioGroup + ViewPager
- RadionButton和Viewpager实现页面切换联动
- Viewpager和RadioGroup实现联动
- android 6.0sd卡内部存储 & 外部存储
- tomcat+websocket实现
- PID2 / 开心的金明
- leetcode 11
- 出题&题解
- ViewPager+Fragment+RadioGroup实现页面联动\点击切换
- 手写一个SqlHelper
- spark sql版本的单词统计代码
- <crtdbg.h> 的作用
- JSESSIONID与SESSION
- 自定义圆形图
- CodeForces 653 A. Bear and Three Balls(数学 ,快排)
- Easy-题目8:242. Valid Anagram
- POJ2488【DFS】