【问题标题】:fade_out ,interpolator crash the app淡出,插值器使应用程序崩溃
【发布时间】:2011-07-20 08:38:31
【问题描述】:

现在,当我使用 linear_interpolator 插入淡出应用时,我的动画效果很好,但是当我使用淡出时,它会使我的应用强制关闭

我的 LogCat 错误是

    07-20 03:35:02.988: ERROR/AndroidRuntime(2596): FATAL EXCEPTION: main
07-20 03:35:02.988: ERROR/AndroidRuntime(2596): java.lang.RuntimeException: Unknown interpolator name: alpha
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.createInterpolatorFromXml(AnimationUtils.java:312)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.loadInterpolator(AnimationUtils.java:255)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.Animation.setInterpolator(Animation.java:328)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.Animation.<init>(Animation.java:218)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AlphaAnimation.<init>(AlphaAnimation.java:40)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:108)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:106)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:83)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.animation.AnimationUtils.loadAnimation(AnimationUtils.java:64)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.View.dispatchTouchEvent(View.java:3762)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1671)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.app.Activity.dispatchTouchEvent(Activity.java:2086)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1655)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1785)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.os.Handler.dispatchMessage(Handler.java:99)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.os.Looper.loop(Looper.java:123)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at android.app.ActivityThread.main(ActivityThread.java:4627)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at java.lang.reflect.Method.invokeNative(Native Method)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at java.lang.reflect.Method.invoke(Method.java:521)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
07-20 03:35:02.988: ERROR/AndroidRuntime(2596):     at dalvik.system.NativeStart.main(Native Method)

我的xml代码是

<alpha
    android:interpolator="@android:anim/linear_interpolator"
    android:fromAlpha="1.0"
    android:toAlpha="0.0"

    android:startOffset="1100"
    android:duration="200"
    android:zAdjustment="normal" />

为什么会这样,我不明白

【问题讨论】:

    标签: android animation alpha


    【解决方案1】:

    我看不到你调用动画的Java代码?但试试这个

    fade_in.xml

       <?xml version="1.0" encoding="utf-8"?>
           <alpha xmlns:android="http://schemas.android.com/apk/res/android"
              android:interpolator="@android:anim/decelerate_interpolator"
              android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="1000" />
    

    fade_out.xml

    <?xml version="1.0" encoding="utf-8"?>
    <alpha xmlns:android="http://schemas.android.com/apk/res/android"
           android:interpolator="@android:anim/accelerate_interpolator"
           android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="1000" />
    

    并从代码调用

    startActivity(new Intent(ChangeLevelActivity.this, GameActivity.class));
    overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);
    

    【讨论】:

      【解决方案2】:

      我可能错了,但我认为fade_out 是一个实际的动画,而不是一个插值器。插值器有 _interpolator 结尾 afaik。比如Accelerator_interpolator、expected_interpolator等。所以应用程序崩溃是因为你传递了一个动画类而不是一个适当的插值器。

      【讨论】:

      猜你喜欢
      • 2011-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-09
      • 1970-01-01
      • 2017-11-10
      • 2012-08-18
      相关资源
      最近更新 更多