Нечетное поведение выбора с Linkify

1

У меня есть TextView с некоторым текстом, который имеет URL. Я использовал Linkify, чтобы превратить их в интерактивные URL:

    Linkify.addLinks(bodyTextView, Linkify.WEB_URLS);

Однако, когда я нажимаю на текст, который НЕ является URL, цвет текста изменяется. Это также происходит, если для textview установлено значение AutoLink.

Вот мой макет:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
   <RelativeLayout
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:id="@+id/headerLinearLay"
    android:orientation="horizontal" android:padding="4px">
    <ImageView
        android:id="@+id/avatarImageView"
        android:layout_height="48px" android:layout_width="48px"></ImageView>
    <TextView
        android:id="@+id/usernameTextView"
        android:text="TextView"
        android:paddingLeft="4dp"
        android:layout_toRightOf="@id/avatarImageView"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"></TextView>
</RelativeLayout>
    <TextView android:text="TextView" android:layout_height="wrap_content" android:id="@+id/bodyTextView" android:textSize="24sp" android:layout_width="fill_parent" android:autoLink="web"></TextView>
    <TextView android:text="TextView" android:layout_height="wrap_content" android:id="@+id/dateTextView" android:layout_width="fill_parent" android:layout_weight="1"></TextView>
    <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbarLinearLayout" android:background="@color/solid_yellow" android:padding="5dip">
    <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:id="@+id/replyButton" android:text="Reply"></Button>
    <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="RT" android:id="@+id/rtButton"></Button>
    <Button android:id="@+id/dmButton" android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="DM"></Button>
</LinearLayout>




</LinearLayout>
  • 0
    Я предполагаю, что, возможно, у вас есть список состояний цвета, определенный для элемента управления TextView, вызывающего изменение цвета. Не видя больше вашего кода, трудно быть более точным.
  • 0
    У меня нет какого-либо определенного списка цветов. Просто обычный просмотр текста ...
Показать ещё 2 комментария
Теги:
textview
url
linkify

2 ответа

1
Лучший ответ

Добавление:

android:textColor="#ffffff"

Элемент TextView в xml решает проблему... кажется, что переопределяющий textcolor переопределяет другие стили цвета, связанные с элементом... см. этот вопрос: Цвет текста в тексте Android не меняется когда отключено

0

Это поведение по умолчанию. Вы можете установить цвет текста явно с помощью атрибута android: textColor, но тогда вы не увидите никаких визуальных изменений в ссылке при нажатии. Одним из решений является установка android: textHighlightColor для соответствия нормальному цвету текста. Текст ссылки non- остается таким же, и вы видите визуальную метку при нажатии ссылки (фон ссылки отображает цвет остальной части текста).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню