2011-02-28 6 views
7

ImageViewをレイアウトに動的に追加してからフェードインしたいのですが残念ながら画像が追加されてからアニメーションが適用されるため、アニメーションが始まる前にちらつきがあります。私は最初にalphaを0に設定しようとしましたが、AlphaAnimateをinに設定しましたが、決して表示されません。ビューの可視性にInvisibleまたはGoneを使用してみました。Androidビューがプログラムでフェードインする

私はアニメーションセットを使用して他のアニメーションとフェードインし、別のアニメーションセットにラッピングします。これが問題だろうか?

アニメーションのコードはかなりシンプルです。トリックはありません。しかし、これを使って削除されたビューが追加されたように見えます。

AlphaAnimation fadeIn = new AlphaAnimation(0,1); 
fadeIn.setDuration(duration/3); 
fadeIn.setFillAfter(true); 
+0

使用しているコードのスニペットフリッカー)? –

答えて

3

は、問題を解決しました。私はアニメーションセットでアルファベット/トランレイト/スケールを行っていましたが、別のアニメーションセットにあるもののうち2つをズームイン/ズームアウトシナリオで実行しました

0

あなたはAlphaAnimation.setFillAfter(true)を使用していますか?ネストされたAnimationSetからそれを削除する

http://developer.android.com/reference/android/view/animation/Animation.html#setFillAfter(boolean

+0

それは問題ではなく、ちらつきの始まりです。私はsetFillAfter(真)を使用しています –

+0

なぜイベントの順序を変更しないでください、最初にアニメーションを開始し、アニメーションの開始に短い遅延を使用して、それを親に追加します – Rich

関連する問題