package com.zhulin.android.atools;import android.content.Context;import android.util.AttributeSet;import android.util.Log;import android.view.MotionEvent;import android.view.VelocityTracker;import android.view.View;import android.view.ViewGroup;import android.view.animation.Interpolator;import android.widget.Scroller;import android.widget.Toast;public class VerticalPager extends ViewGroup{private Scroller mScroller;private Context mContext;public VerticalPager(Context context, AttributeSet attrs) {super(context, attrs);this.mContext=context;mScroller=new Scroller(context);//mScroller=new Scroller(mContext, new Interpolator() {////@Override//public float getInterpolation(float input) {//return 300;//}//});}@Overrideprotected void onLayout(boolean changed, int l, int t, int r, int b) {int totalHeight=0;int count=getChildCount();for(int i=0;i(getHeight()*(getChildCount()-1))){View lastView=getChildAt(getChildCount()-1);mScroller.startScroll(0,lastView.getTop()+300, 0, -300);}else{int position=getScrollY()/getHeight();int mod=getScrollY()%getHeight();if(mod>getHeight()/3){View positionView=getChildAt(position+1);mScroller.startScroll(0, positionView.getTop()-300, 0, +300);}else{View positionView=getChildAt(position);mScroller.startScroll(0, positionView.getTop()+300, 0, -300);}}invalidate();break;//case MotionEvent.ACTION_MASK://if(getScrollY()<0){//mScroller.startScroll(0, 0, 0, 0);//}else if(getScrollY()>(getHeight()*(getChildCount()-1)){//}//invalidate();//break;}return true;}@Overridepublic void computeScroll() {super.computeScroll();if(mScroller.computeScrollOffset()){scrollTo(0, mScroller.getCurrY());}else{}}}

xml布局

<?xml version="1.0" encoding="UTF-8"?>                                                            


更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. Android— Eclipse运行Emulator时提示权
  2. Android(安卓)Java和JavaScript代码相互
  3. android中使用Intent在activity之间传递
  4. Android(安卓)WebView与Javascript交互
  5. android 模拟器中启用相机API支持
  6. android 开发谷歌地图的步骤
  7. android 5.0新特性学习--CardView
  8. Android(安卓)字体修改
  9. android中对服务的应用管理
  10. Android手动创建和解析Json