ViewPager+PhoneView出現

當ViewPage中使用了PhoneView(一個圖片放大縮小的工具),會出現 java.lang.ArrayIndexOutOfBoundsException或java.lang.IndexOutOfBoundsException
因此必須重寫ViewPager
package com.webApp.view;

import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;

/**
 * 
 * 去除java.lang.IllegalArgumentException:pointerIndex out of range
 * @date 2014-7-25
 */
public class ImageViewViewPager extends ViewPager {

	private boolean isLocked;

	public ImageViewViewPager(Context context) {
		super(context);
		isLocked = false;
	}

	public ImageViewViewPager(Context context, AttributeSet attrs) {
		super(context, attrs);
		isLocked = false;
	}

	@Override
	public boolean onInterceptTouchEvent(MotionEvent ev) {
		if (!isLocked) {
			try {
				return super.onInterceptTouchEvent(ev);
			} catch (Exception e) {
				e.printStackTrace();
				return false;
			}
		}
		return false;
	}

	@Override
	public boolean onTouchEvent(MotionEvent event) {
		if (!isLocked) {
			return super.onTouchEvent(event);
		}
		return false;
	}

	public void toggleLock() {
		isLocked = !isLocked;
	}

	public void setLocked(boolean isLocked) {
		this.isLocked = isLocked;
	}

	public boolean isLocked() {
		return isLocked;
	}

}


版權聲明:本文爲博主原創文章,未經博主容許不得轉載。java

相關文章
相關標籤/搜索