大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Android仿微信底部按钮滑动变色,这里只针对使用Fragment为Tab页的滑动操作,进行简单的变色讲解。
成都网站建设、成都做网站的开发,更需要了解用户,从用户角度来建设网站,获得较好的用户体验。成都创新互联公司多年互联网经验,见的多,沟通容易、能帮助客户提出的运营建议。作为成都一家网络公司,打造的就是网站建设产品直销的概念。选择成都创新互联公司,不只是建站,我们把建站作为产品,不断的更新、完善,让每位来访用户感受到浩方产品的价值服务。首先说下OnPageChangeListener这个监听
//这个监听有三个方法 public abstract void onPageScrollStateChanged (int state) public abstract void onPageScrolled (int position, float positionOffset, int positionOffsetPixels) public abstract void onPageSelected (int position) //第一个方法onPageScrollStateChanged 中的参数state,有三个可取的值 public static final int SCROLL_STATE_DRAGGING Constant Value: 1 (0x00000001) //手指按在ViewPager上滑动时 public static final int SCROLL_STATE_IDLE Constant Value: 0 (0x00000000) //手指松开后,ViewPager自动滑动期间 public static final int SCROLL_STATE_SETTLING Constant Value: 2 (0x00000002) //ViewPager进入了某个Page //如果在onPageScrollStateChanged 中输出state的值,你会发现每次都是按顺序打印出“1---2---0” //第二个方法onPageScrolled的三个参数 position://滑动时,屏幕左侧显示的第一个page positionOffset://滑动比例,值的范围为[0, 1),手指往左滑动,该值递增,反之递减 positionOffsetPixels://滑动距离,和屏幕有关,手指往左滑动,该值递增,反之递减 //我们经常需要检查viewpager的滑动方向并作出一些操作,这时你只需要通过position和positionOffset两个值即可实现该功能。 //比如实现微信底部图标颜色渐变 向左滑动时 ChangeColorIconWithTextView left = mTabIndicator.get(position); //左侧显示的第一个page页面上底部图标和文字的初始化 ChangeColorIconWithTextView right = mTabIndicator.get(position + 1); //右侧显示的Page底部图标和文字的初始化 left.setIconAlpha(1 - positionOffset); //设置图标的透明度 此时positionOffset值递增 左侧图标的颜色变浅 right.setIconAlpha(positionOffset); //右侧图标的颜色逐渐变深 //第三个方法onPageSelected的三个参数 position://当前选择的page序号 //该方法被调用的时间比较特别,在上面的第一个方法中的“1---2----0”中的2执行之后,onPageSelected就执行,然后执行“1---2----0”中的0。就是手指松开屏幕之后,onPageSelected被执行。