首页 > 移动平台 > 详细

Android java.lang.IllegalArgumentException: pointerIndex out of range

时间:2015-05-24 17:25:24      阅读:272      评论:0      收藏:0      [点我收藏+]

转载请注明:http://blog.csdn.net/aaawqqq


Android   java.lang.IllegalArgumentException: pointerIndex out of range  


bug: 

11-27 00:12:55.029: E/AndroidRuntime(22447): java.lang.IllegalArgumentException: pointerIndex out of range
11-27 00:12:55.029: E/AndroidRuntime(22447):      at android.view.MotionEvent.nativeGetAxisValue(Native Method)


原因

绘图的时候 多点触控 放大缩小 导致一场 

我在viewpager 里面  通过手势绘制图片 放大缩小 造成了这个bug


我的 viewpager 解决方案: 

1 继承 view  

2 重写 dispatchTouchEvent

3 抓住异常

    

public class FixedViewPager extends ViewPager {
        public FixedViewPager(Context context) {
               super(context);
       }

        public FixedViewPager(Context context, AttributeSet attrs) {
               super(context, attrs);
       }

        @Override
        public boolean dispatchTouchEvent(MotionEvent ev) {
               try {
                      return super .dispatchTouchEvent(ev);
              } catch (IllegalArgumentException ignored) {
              } catch (ArrayIndexOutOfBoundsException e) {
              }

               return false ;

       }
}


网上有其它方法 如:

重写onInterceptTouchEvent 和onTouchEvent方法

try catch 该两个方法,形如下面:

try{
super.onInterceptTouchEvent(MotionEvent ev)
} catch(ILLegalArgumentException ex) {
}
return false;
try{
super.onTouchEvent(MotionEvent ev)
} catch(ILLegalArgumentException ex) {
}
return false;

参考: http://nanjingjiangbiao-t.iteye.com/blog/1794478


//┏┓   ┏┓
//┏┛┻━━━┛┻┓
//┃       ┃  
//┃   ━   ┃
//┃ ┳┛ ┗┳ ┃
//┃       ┃
//┃   ┻   ┃
//┃       ┃
//┗━┓   ┏━┛
//  ┃   ┃   神兽保佑        
//  ┃   ┃   代码无BUG!
//  ┃   ┗━━━┓
//  ┃       ┣┓
//  ┃       ┏┛
//  ┗┓┓┏━┳┓┏┛
//    ┃┫┫ ┃┫┫
//    ┗┻┛ ┗┻┛

每日精进




Android java.lang.IllegalArgumentException: pointerIndex out of range

原文:http://blog.csdn.net/aaawqqq/article/details/45953263

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!