当ViewPage中使用了PhoneView(一个图片放大缩小的工具),会出现 java.lang.ArrayIndexOutOfBoundsException或java.lang.IndexOutOfBoundsException
所以必须重写ViewPager
所以必须重写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;
}
}