2011-06-18 45 views
6

Android uygulamalarımı silmeye çalışıyorum ve ImageSwitcher'ın her türlü animasyon görevi için çok fazla başvuruda bulunduğunu görüyorum, ancak Google Dokümanlar tamamen spartan ve buradaki yöntemlerden başka bir şey açıklamıyor. sınıf. Bu arada, örneklerin hepsi galeriyi kullanıyor ve nedenini açıklamıyor.ImageSwitcher aslında ne yapar?

Sınıfın gerçekte ne yaptığı ve nasıl kullanılacağı ile ilgili herhangi bir bilginin (veya açıklamanın) bir bağlantısı var mı?

cevap

7

Hiç kullanmadığım kadar kesin bir yanıt veremiyorum. En iyi tahminim ... kalıtım zincirini aşağı çalışan gelmektedir onun görünümler arasında geçiş yaparken animasyonlar gerçekleştirecek bir FrameLayout kap için

ViewAnimator

...

temel sınıf.

iki görünüm arasında geçiş yapar ve bu görüşlerin oluşturulduğu bir fabrika var ViewSwitcher

ViewAnimator. Görünümleri oluşturmak için fabrikayı kullanabilir veya kendiniz ekleyebilirsiniz. Bir ViewSwitcher , yalnızca bir kerede gösterilebilen iki alt görünümüne sahip olabilir.

Sonra ... ViewSwitcher başka direk alt sınıf bakarak

TextSwitcher tip TextView sadece çocukları içeren

Uzmanlaşmış ViewSwitcher

. Bir TextSwitcher, ekrandaki bir etiketi canlandırmak için kullanışlıdır. setText (CharSequence) olarak adlandırılan her , TextSwitcher dışarı mevcut metni canlandıran ve yeni metin animasyon.

Yani satır aralarını okuyarak, bir ImageSwitcher görüntüler için optimize edilmiş bir ViewAnimator olduğunu (yani drawables) ve doğrudan ViewSwitcher'dan miras aldığı için sadece iki görüntü alabilir.

Yani, TextSwitcher bakış başka sözcüklerle, Söyleyebilirm ...

<insert setImageXXX method here> çalıştırıldığı her defasında, ImageSwitcher akım görüntü animasyon ve yeni görüntüyü canlandırır.

Dediğim gibi sadece bir 'en iyi tahmin'.

+1

bu müthiş bir tahmin! Teşekkürler. Orada başka bir cevap olmasa da, sanırım seninkini doğru olarak işaretleyeceğim :) –