SORU
22 Temmuz 2011, Cuma


Java Android Animasyon Fade Out Fade

1000ms solmaya ve sonra 1000ms dışarı solma harcayan bir İmageView 2 saniyelik bir animasyon yapmak istiyorum.

Şimdiye kadar İmageView benim kurucu olduğum şey şu:

Animation fadeIn = new AlphaAnimation(0, 1);
fadeIn.setDuration(1000);

Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);

AnimationSet animation = new AnimationSet(true);
animation.addAnimation(fadeIn);
animation.addAnimation(fadeOut);
this.setAnimation(animation);

Bu animasyonu çalıştırdığımdahiçbir şeygösterir. Ben alpha bir animasyon kaldırdığınızda, ancak davranış beklendiği gibi çalışır.

Şeyleri zaten denedim:

  • setFillBefore, setFillAfter setFillEnabled akla gelebilecek her kombinasyonu.
  • Ekleme için LinearInterpolator AnimationSet.

CEVAP
25 Temmuz 2011, PAZARTESİ


Kendi sorunumu anladım. Çözüm interpolators dayalı olarak sona erdi.

Animation fadeIn = new AlphaAnimation(0, 1);
fadeIn.setInterpolator(new DecelerateInterpolator()); //add this
fadeIn.setDuration(1000);

Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator()); //and this
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);

AnimationSet animation = new AnimationSet(false); //change to false
animation.addAnimation(fadeIn);
animation.addAnimation(fadeOut);
this.setAnimation(animation);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ionized Digital Air Studios

    Ionized Digi

    20 HAZİRAN 2009
  • Menglong Tav

    Menglong Tav

    18 Temmuz 2010
  • Thom Hall

    Thom Hall

    24 Kasım 2006