2016-03-31 12 views
0

API19 üzerinde çalışması gereken bir Uygulama üzerinde çalışıyoruz. VideoView üzerinden bir metin göstermemiz gerekiyor ve metin daha uzun olduğunda (kabın içine sığabileceğinden), metni yatay olarak kaydırmak/seçim yapmak istiyoruz.TextView'da Marquee, setText çağrısının ardından çalışmaz()

TextView'de Seçim Çerçevesi belirtme özelliği olsa da, onu çalıştıramadık.

İşte
android:visibility="invisible" 
android:singleLine="true" 
android:ellipsize="marquee" 
android:marqueeRepeatLimit ="marquee_forever" 
android:scrollHorizontally="true" 

görünür programlı yapılır nasıl: Burada

XML tanımıdır

textView.setVisibility(View.VISIBLE); 
textView.setSelected(true); 
textView.setEnabled(true); 

Hatta tüm XML tanımların programlı yerine niteliklerini ayarlamak için çalıştı. Denemelerin hiçbiri işe yaramadı. Bu konuda birçok soru var, neredeyse tüm önerileri denedim, ancak bu işe yaramadı.

Güncelleme: Ben textView.setText() aramazsam iyi çalışır. Bu yanıttan: https://stackoverflow.com/a/13765865/560449 görünürse, Marquee efektini textView.setText() aramasından sonra çalışmaya devam etmek için alamıyoruz. Bunun için bir düzeltme olduğunu bilen var mı?

cevap

0

Bu konuyu bir an önce kurtardım ve burada bir Rocket bilimi bulunmadı!

Yapmanız gereken tek şey, kodda setText() aradığınızda tüm özellikleri programatik olarak ayarlamaktır. Örneğin

mTvTitle.setText("skjdfbaskjfdbkajbgjkbgjkdbgkjg"); 
     mTvTitle.setEllipsize(TextUtils.TruncateAt.MARQUEE); 
     mTvTitle.setSingleLine(true); 
     mTvTitle.setMarqueeRepeatLimit(5); 
     mTvTitle.setSelected(true); 

için

Bitti! Benim için çok daha iyi çalışıyor.

SOF REFERENCE