多数のボタンと 2 つのテキスト ビューを含むレイアウト (RelativeLayout) があります。情報が変更されるたびに、すべてのビューをフェードアウトし、情報を更新してから、ビューをフェードインします。これにはレイアウトアニメーションを使用します。
非常に奇妙なことは、テキスト ビューは 1 回しかアニメーション化できないことです。一度正しくフェードインおよびフェードアウトすると、アニメーション化されなくなります。一方、ボタンは問題なくアニメーションを続けます。
もう1つのおそらく奇妙なことは、この問題がAndroid 2.3.xでは発生せず、Android 4.0.xで発生することです。
フェードイン後にテキストビューのアニメーションをクリアすることで問題を回避できますが、まだフェードインしていないため見栄えがよくありません。
フェードインする前にテキスト ビューのアニメーションをクリアしようとしましたが、役に立ちません。マニフェストで targetSdkVersion プロパティのさまざまな設定も試しましたが、結果はありません。
フェードイン アニメーション (フェードアウトも同様):
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="750"
android:fillAfter="true"
android:fromAlpha="0.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="1.0"
/>
アニメーション コード (これは、レイアウトがフェードインするたびに実行されます):
// Set listener.
viewGroup.setLayoutAnimationListener(listener);
// Load animation.
final Animation fadeIn = AnimationUtils.loadAnimation(context, R.anim.fade_in);
// Create and start animation controller.
final LayoutAnimationController animController = new LayoutAnimationController(fadeIn);
viewGroup.setLayoutAnimation(animController);
animController.setAnimation(fadeIn);
animController.setDelay(FADE_IN_DELAY + extraDelay);
animController.setOrder(LayoutAnimationController.ORDER_REVERSE);
animController.start();
誰にもアイデアはありますか?Buttons と TextViews の間にある種のアニメーション固有の違いはありますか? Android 4 で下位互換性を損なうアニメーションの変更はありますか?
ありがとうございました!