Attempt to invoke virtual method 'void android.view.ViewGroup.transformMatrixToGlobal(android.graphi

用过Android5.0的Activity的转场动画的童鞋应该都会碰到这个异常,没有碰到也没有关系,当积累经验了,当使用Android5.0转场动画的时候,偶尔会抛出Attempt to invoke virtual method 'void android.view.ViewGroup.transformMatrixToGlobal(android.graphics.Matrix)' on a null object reference异常




那这是什么意思呢,很明显空指针了,而且跟ViewGroup有关,那经过测试,发现是首页轮播图与我的ViewPager有关,一般情况下,当点击首页轮播图的时候会跳转到下一个Activity上,在这个地方我用了Android5.0的动画,然后就抛出了上面的异常,什么原因呢?


问题原因


点击轮播图跳转到第二个Activity的时候,由于没有使ViewPager停止轮播,而在第二个Activity点返回的时候没有找到原来在第一个Activity里面共享的ImageView,所以就会抛出这个空指针异常,那怎么解决呢?也很简单。


解决方法

解决的方法很简单,就是在第一个Activity跳转到第二个Activity的时候,也就是在onPause()的时候停止轮播,在第二个Activity返回第一个Activity的时候也就是onResume()的时候继续轮播,这样返回共享的ImageView就不会被收回



发布了25 篇原创文章 · 获赞 46 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_20328181/article/details/78812460