2012-04-02 2 views
7

Mam TextView, który ustawiam tekst za pomocą setText(). W ustawieniach ustawiłem:Elipsa nie działa

Ellipsize = END 
Lines = 1 
Gravity = Left 
Scroll Horizontal = False 

Ale to przycina dodatkowy tekst (klipuje tekst od miejsca, w którym znaleziono ostatnie miejsce). Ale nie dołączaj kropek ("...") na końcu.

Przykład:

------------------------------- 
|        | 
Hi how are you ? And where are you now ? 
|        | 
|        | 

Po wycinek:

------------------------------- 
|        | 
Hi how are you ? And where 
|        | 
|        | 

Czego chcę:

------------------------------- 
|        | 
Hi how are you ? And where... 
|        | 
|        | 

Używam Android 1.6. Pomoc Plza.

+1

czy możesz wkleić 'XML'. Spróbuj użyć: 'android: singleLine =" true "' – Macarse

+0

, ale to jest amortyzowane. Czy to jest? –

Odpowiedz

15

android:singleLine="true" i textView.setEllipsize(TruncateAt.END);

Są to dwa kluczowe elementy, aby to osiągnąć.

+0

i donot zrozumieć. Kiedy ustawię SingleLine = TRUE, to działa. Ale jest amortyzowany !!! –

+1

nie, nie jest przestarzałe .. ponieważ wielokropek działa, gdy nasz widok tekstowy ma włączoną jedną linię lub ustawione są dla niego maksymalne linie .. –

+0

thanku. Ale nadal nie wiem. W oknie właściwości ta SingleLine jest wymieniona poniżej "Depreceated" w moim Eclipse! –

2

Textview ma wywołanie właściwości singleLine sprawiają, że true w pliku XML.

Jeśli robisz poprzez kod następnie

textView.setSingleLine(true); 
+0

thanku za pomoc –

+0

ok dzięki kumplowi –

1

tutaj pracować dla mnie

android:ellipsize="end" 
android:singleLine="true" 
3
 android:singleLine 

jest przestarzałe.

Oto co mówi dokumentacja.

„Ten atrybut jest przestarzała i otrzymuje flagi textMultiLine w atrybucie InputType Należy zachować ostrożność podczas przebudowie istniejących układów, jako wartość domyślna singeLine jest fałszywa (tryb wielowierszowy), ale jeśli określisz dowolną wartość dla parametru inputType, domyślną wartością jest (jeśli zostaną znalezione atrybuty singleLine i inputType , flagi inputType zastąpią wartość z singleLine.). [ boolean] "

Aby rozwiązać twój problem. Możesz użyć następującego:

 android:ellipsize="end" 
     android:maxLines="1"