【发布时间】:2016-08-20 14:28:35
【问题描述】:
我有一个自动翻转的 ViewFlipper 组件,我想处理该组件在当前视图和下一个视图之间进行转换的事件。有可能吗?
谢谢。
mViewFlipper.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in));
mViewFlipper.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));
mViewFlipper.getAnimation().setAnimationListener(this);
mViewFlipper.startFlipping();
这是日志:
02-16 14:27:50.860: E/AndroidRuntime(7961): 致命异常: main 02-16 14:27:50.860: E/AndroidRuntime(7961): Process: com.idiadasample, PID: 7961 02- 16 14:27:50.860: E/AndroidRuntime(7961): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com.idiadasample/com.idiada.activity.ViewFlipperActivity}: java.lang.NullPointerException: 尝试调用虚拟方法'void android.view.animation.Animation.setAnimationListener(android.view.animation.Animation$AnimationListener)' 在空对象引用 02-16 14:27:50.860: E/AndroidRuntime(7961): at android.app.ActivityThread .performLaunchActivity(ActivityThread.java:2298) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) 02-16 14:27:50.860: E /AndroidRuntime(7961): 在 android.app.ActivityThread.access$800(ActivityThread.java:144) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.app.ActivityThread$H.handleMessage(ActivityThread .java:1278) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.os.Handler.dispatchMessage(Handler.java:102) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.os.Looper .loop(Looper.java:135) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.app.ActivityThread.main(ActivityThread.java:5221) 02-16 14:27:50.860: E /AndroidRuntime(7961): at java.lang.reflect.Method.invoke(Native Method) 02-16 14:27:50.860: E/AndroidRuntime(7961): at java.lang.reflect.Method.invoke(Method.java :372) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 02-16 14:27:50.860: E /AndroidRuntime(7961): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) 02-16 14:27:50.860: E/AndroidRuntime(7961): 引起: java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法 'void android.view.animation.Animation.setAnimationListener(android.view.animation.Animation$AnimationListener)' 02-16 14:27:50.860: E/Android运行时(7961):在 com.idiada.activity.ViewFlipperActivity.onCreate(ViewFlipperActivity.java:89)02-16 14:27:50.860:E/AndroidRuntime(7961):在 android.app.Activity.performCreate(Activity.java :5933) 02-16 14:27:50.860: E/AndroidRuntime(7961): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) 02-16 14:27:50.860: E/AndroidRuntime(7961):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) 02-16 14:27:50.860: E/AndroidRuntime(7961): ... 10 更多
【问题讨论】:
标签: android listener viewflipper