java.lang.IllegalArgumentException:pointerIndex out of range问题的两种解决办法

参照原创:http://blog.csdn.net/eoeandroida/article/details/7954398


在做多点触控放大缩小,操作自己所绘制的图形时发生这个异常,如果是操作图片的放大缩小多点触控不会出现这个错误的,这个bug是Android的系统原因,所以第一种方式是:

修改frameworks\base\core\jni\android_view_MotionEvent.cpp的android_view_MotionEvent_nativeGetAxisValue方法注释掉
if(! validatePointerIndex(env,pointerIndex,pointerCount)){
   return 0;
}

改完后编译整个系统,然后替换lib库,需要大约半个多小时,这个方法比较麻烦。

简单的方法:捕获IllegalArgumentException(非法参数异常)如:
try{
..........
}catch(IllegalArgumentException e){
 e.printStackTrace();
}

相对于第一种方法,第二种更加显而易见些。

你可能感兴趣的:(异常)