看MarsChen老师视频,学习AnimationListener遇到的问题,老师没出错,自己弄的时候出错了。
参考http://blog.csdn.net/u011515165/article/details/49001433
不知为何在加载动画的时候,同时又移除View,不知道是什么情况
出错logcat如下
java.lang.NullPointerException: Attempt to read from field 'int android.view.View.mViewFlags' on a null object reference
java.lang.NullPointerException: Attempt to read from field 'int android.view.View.mViewFlags' on a null object reference
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3198)
at android.view.View.updateDisplayListIfDirty(View.java:14057)
at android.view.View.getDisplayList(View.java:14085)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368)
at android.view.View.updateDisplayListIfDirty(View.java:14022)
at android.view.View.getDisplayList(View.java:14085)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368)
at android.view.View.updateDisplayListIfDirty(View.java:14022)
at android.view.View.getDisplayList(View.java:14085)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3389)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3368)
at android.view.View.updateDisplayListIfDirty(View.java:14022)
at android.view.View.getDisplayList(View.java:14085)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:266)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:272)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:311)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2526)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2364)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1995)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1081)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5818)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:769)
at android.view.Choreographer.doCallbacks(Choreographer.java:582)
at android.view.Choreographer.doFrame(Choreographer.java:552)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:755)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5235)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:906)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:701)
用下面这段代码,就不会出错了
new Handler().post(new Runnable() {
public void run() {
parent.removeView(imageView);
}
});