Android基础:翻页控件Viewpager的使用方法,viewpager+fragment混合使用
2015-12-10 13:42
537 查看
viewpager的 使用分以下4步:
1, 在xml文件中添加:
2,初始化控件并设置viewpager适配器:
3,设置启动时首页:
4,设置viewpager的滑动监听事件:
我做的是viewpager加fragment,viewpager适配器的代码如下:
MyViewPagerAdapter.class
viewpager滑动监听 的事件代码如下:
改变字体颜色用到了selector,文件如下:
yellow_text_selector.xml
MainActivity部分代码如下:
至于fragment代码,在博主的上一篇博客里已经贴出来了,有需要的可以看下。。。
很简单的一个demo,在此基础上掌握了viewpager的基本用法,可以很灵活的去设置各种特效,demo运行效果如下:
注:所涉及到的fragment导入的均是v4包下的,而且MAinActivity继承自fragmentActivity
右滑时fragment改变,标签颜色改变
1, 在xml文件中添加:
<android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="wrap_content" android:layout_height="wrap_content" />
2,初始化控件并设置viewpager适配器:
mViewPager = (ViewPager) findViewById(R.id.viewPager); mViewPager.setAdapter(new MyViewPagerAdapter(getSupportFragmentManager(), mFragmentList));
3,设置启动时首页:
mViewPager.setCurrentItem(0);
4,设置viewpager的滑动监听事件:
mViewPager.addOnPageChangeListener(MyPageChangeListener);
我做的是viewpager加fragment,viewpager适配器的代码如下:
MyViewPagerAdapter.class
public class MyViewPagerAdapter extends FragmentPagerAdapter { private List<Fragment> mFragmentList = new ArrayList<>(); public MyViewPagerAdapter(FragmentManager fm,List<Fragment> mFragmentList) { super(fm); this.mFragmentList = mFragmentList; } @Override public Fragment getItem(int position) { return mFragmentList.get(position); } @Override public int getCount() { return mFragmentList.size(); } }
viewpager滑动监听 的事件代码如下:
private ViewPager.OnPageChangeListener MyPageChangeListener = new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { mViewPager.setCurrentItem(position); //当前页的标签颜色改变 for (int i = 0;i < mViewList.size();i++){ if (i==position){ mViewList.get(i).setSelected(true); }else { mViewList.get(i).setSelected(false); } } } @Override public void onPageScrollStateChanged(int state) { } };
改变字体颜色用到了selector,文件如下:
yellow_text_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected="true" android:color="#ffff2d21"/> <item android:color="#020202"/> </selector>
MainActivity部分代码如下:
...... mOne = (TextView) findViewById(R.id.one); mTwo = (TextView) findViewById(R.id.two); mViewList.add(mOne); mViewList.add(mTwo); mViewList.get(0).setSelected(true); mFragmentList.add(firstFragment); mFragmentList.add(secondFragment); mViewPager = (ViewPager) findViewById(R.id.viewPager); mViewPager.setAdapter(new MyViewPagerAdapter(getSupportFragmentManager(), mFragmentList)); mViewPager.setCurrentItem(0); mViewPager.addOnPageChangeListener(MyPageChangeListener);
至于fragment代码,在博主的上一篇博客里已经贴出来了,有需要的可以看下。。。
很简单的一个demo,在此基础上掌握了viewpager的基本用法,可以很灵活的去设置各种特效,demo运行效果如下:
注:所涉及到的fragment导入的均是v4包下的,而且MAinActivity继承自fragmentActivity
右滑时fragment改变,标签颜色改变
相关文章推荐
- Android—ListView Item 展开动画效果
- Android 图片加载Bitmap OOM错误解决办法
- GitHub 优秀的 Android 开源项目
- android 屏幕适配(一)基本适配
- Android所有View通用下拉刷新上拉加载控件
- Android中获取应用程序(包)的信息-----PackageManager的使用
- Android页面布局控件-Android学习笔记
- Android 隐藏软键盘
- android:process=":remote"和android:process="remote"的区别
- Android Studio配置AndroidAnnotations
- Android所有权限说明
- 正则表达式-理论基础篇
- Intent android基础二
- 每个Android开发者都应该了解的资源列表
- 每个Android开发者都应该了解的资源列表
- 每个Android开发者都应该了解的资源列表
- 每个Android开发者都应该了解的资源列表
- android中的所有activity间动画跳转(主要讲的是anim)
- Android应用Design Support Library完全使用实例
- Android开发技巧——高亮的用户操作指南