2010-03-24 18 views
30

Bir TextView veya herhangi bir görsel nesnenin ekrana sarılmasını nasıl önleyebilirim ve bunun yerine kenarlarını kırpmasını nasıl önleyebilirim? Bunu yapmak için bazı XML özniteliği veya kodu var mı, yoksa ekrandan taşacak herhangi bir şeyin olmaması imkansız mı? ÖrneğinTextView öğesinin ebeveyn tarafından sarılmasını önleyin

, bu vardır:

text being wrapped http://i43.tinypic.com/6xwyzd.jpg

Ama gerçekten bunu istiyor:

text being cropped http://i43.tinypic.com/i5rc51.jpg

Herhangi bir fikir?

cevap

58

çek dışarı android:maxLines="1" ve ... biten eklemek istiyorsanız da eklemek

<TextView 
    android:id="@+id/name" 
    android:text="i want this to crop not wrap" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:maxLines="1" 
    android:ellipsize="end" /> 

android:singleLine="true"android:ellipsize="end"deprecated in API Level 3 oldu.

+0

@ Pentium10: Güzel, teşekkürler. Bu, düğmeler ve şeyler için nasıl yapılır? – Jay

+0

Huh. Muhtemelen aynı şekilde. Sadece gösterdiğim şeyin ötesinde yapabileceğiniz pek bir şey yok. Görünümü sınırlamak için yükseklik ve genişlikteki maddeleri kullanırsınız, geri kalanı kesilir. – Pentium10

+1

Bu, satırın sonunda bir "..." görünümüne neden olur. –

8

android:singleLine="true" adlı kullanıcıyı arıyor.

+1

@FranciscoCorralesMorales Hiçbir yerde 'singleLine' kullanımdan kaldırılmıştır: http://developer.android.com/reference/android/widget/TextView.html#attr_android:singleLine –

+0

IntelliJ, android: singleLine'ın kullanımdan kaldırıldığını belirtir. Dokümantasyona göre görünmektedir (API 27'den itibaren). Ve gerçekte, TextLink'in görüntülenmesini istediği kadar metin oluştururken maxLines = 1 için farklı bir davranışı vardır, oysa maxLines = 1 yazılan son tam sözcükten sonra keser. – William

0

android: tekli = "true" Bana

+1

Cevabınızı biraz açıklayabilir misiniz? Bunun neden işe yarayacağını detaylandırın. –

0

için çalışır Ve java kodunda bu kadar:

textView.setSingleLine(); 
0

textView.setHorizontallyScrolling(true); benim için çalıştı.

İlgili konular