2

写真をフェードインさせたい(これがあなたの呼び方だと思う...)。私は現在、これを行うためにアルファを使用しようとしています(以下を参照)。しかし、アルファは黒い画面を取得してから画像を表示しています。最初に画像を表示するアニメーションが必要ですが、透明な画像または非常に明るい画像を表示してから、アニメーションが進むにつれて暗くなり、色を塗りつぶします。

私が自分自身を正しく説明したことを願っています...

 AlphaAnimation fadein = new AlphaAnimation(0, 1);
     //fadein.setFillAfter(true);
     fadein.setDuration(1000);
     apa.startAnimation(fadein);
     animationmove=3;
4

2 に答える 2

3

最初に部分的に表示したい場合は、次の2つのオプションのいずれかを実行できます。

  1. 不透明度の低い画像を作成し、それを親レイアウトの背景として設定します。
  2. 初期アルファをゼロ以外の小さな値に変更します。

    AlphaAnimationフェードイン=新しいAlphaAnimation(0.2、1);

アニメーション後、アニメーション化した画像はおそらく元の状態に戻ります。

使用できる「setFill...」メソッドは3つあります。 fadein.setFillBefore(true)を宣言すると、アニメーションが終了した状態で開始されますfadein.setFillEnabled(true)

fadein.setFillAfter(true)アニメーション後の最終状態をアニメーション画像に保持させます。

これらは、animation.xmlファイルの、、の間で宣言することもできます。

于 2012-04-06T13:56:39.043 に答える
0

anim/alpha.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="0.0"
    android:toAlpha="1.0"
    android:duration="1000">

およびJavaファイル

Animation an = AnimationUtils.loadAnimation(this,anim.alpha);
    iv.startAnimation(an);
于 2012-04-06T14:00:24.980 に答える