PullToRefreshView优化

PulltoRefreshview是我在CSDN上下的,据说来源是这里,这里简单说明下 http://gundumw100.iteye.com/blog/1764763

这个控件支持多种控件的上啦下拉事件,非常不错,但同时也有一些缺点,需要进行优化

优化1,添加上拉与下拉开关,当我们不需要上拉下拉的时候屏蔽事件

在类中申明变量

	private ActivityHelper mhelper;//自定义的类,主要用于分辨率转换等操作
	private boolean canpulltoload=false,canpulltore=false;//定义变量,控制上拉下拉开关
	//定义set get方法
	public void setCanpulltoload(boolean canpulltoload) {
		this.canpulltoload = canpulltoload;
	}




	public void setCanpulltore(boolean canpulltore) {
		this.canpulltore = canpulltore;
	}
	//修改onTouchEvent中的
	//ACTION_MOVE方法 实现加载开关

	case MotionEvent.ACTION_MOVE:
			int deltaY = y - mLastMotionY;
			if (mPullState == PULL_DOWN_STATE&&canpulltore) {//执行下拉
				headerPrepareToRefresh(deltaY);
				// setHeaderPadding(-mHeaderViewHeight);
			} else if (mPullState == PULL_UP_STATE&&canpulltoload) {//执行上拉
				footerPrepareToRefresh(deltaY);
			}
			mLastMotionY = y;
			break;

优化2 ,修改事件判定,防止内容无法点击

在使用该控件的过程中,发现在高分屏中,很难点击内容的情况

解决方案

修改判定条件,

修改方法isRefreshViewScroll

deltaY >0修改为
deltaY >  mhelper.convertDpToPixel(10, context)
同理
deltaY<0修改为
deltaY < - mhelper.convertDpToPixel(10, context)

经过测试问题解决





你可能感兴趣的:(android)