TextView с гравитацией = центр и эллипс = маркер? - PullRequest
2 голосов
/ 01 апреля 2011

У меня есть TextView с возможно очень длинным текстом. Кроме того, текст должен быть центрирован, когда он достаточно короткий, чтобы не вызывать эффект выделения.

Это макет XML:

<TextView 
    android:id="@+id/TextView01" 
    android:layout_height="wrap_content"
    android:textColor="#000000" 
    android:gravity="center" 
    android:textSize="12dp"
    android:layout_width="fill_parent" 
    android:focusable="false" android:lines="1"
    android:marqueeRepeatLimit="marquee_forever" 
    android:focusableInTouchMode="false" 
    android:ellipsize="marquee" 
    android:scrollHorizontally="true"></TextView>

также я использую findViewById(R.id.TextView01).setSelected(true), чтобы немедленно запустить выделение.

Когда текст становится слишком длинным, и эффект выделения будет активирован, он просто исчезнет. Короткий текст отображается и работает.

Когда я удаляю android:gravity="center", текст виден и шатер работает. Но короткий текст больше не будет центрирован в TextView. Что я делаю не так?

Редактировать: я использую Android 2.2.

Edit2: Когда я заменяю android: lines = "1" на (устарело) android: singleLine = "true", все работает как положено, но это не кажется идеальным решением.

Ответы [ 2 ]

2 голосов
/ 02 мая 2012

Попробуйте изменить атрибут android: line = "1" на android: singleLine = "True". У меня отлично работает.

0 голосов
/ 01 апреля 2011

Измените атрибут android:lines="1" на android:inputType="text".Похоже, ошибка.

...