Как сделать HTML-ссылки в элементе элемента ListView?

StackOverflow https://stackoverflow.com/questions/3445753

  •  27-09-2019
  •  | 
  •  

Вопрос

Я хочу сделать приложение, которое очень похоже на официальный клиент Twitter для Android.

В моем элементе ListView есть TextView, который имеет какой-то HTML-контент, я надеюсь, что ссылки внутри него можно сосредоточиться и кликабельны, я использовал:

getListView().setItemsCanFocus(true);

Но это все еще не работает, я не знаю почему.

Макет так:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/item"
 android:layout_width="fill_parent" 
 android:layout_height="wrap_content"
 android:orientation="horizontal" 
 android:padding="6dip"
 android:background="#FFFFFF">
 <ImageView android:id="@+id/avatar" 
     android:layout_width="wrap_content"
  android:layout_height="fill_parent" 
  android:layout_marginRight="6dip"
  android:src="@drawable/default_happy_face" />
 <LinearLayout 
     android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
  <RelativeLayout
      android:id="@+id/linearBanner"
      android:orientation="horizontal"
      android:layout_width="fill_parent"
      android:layout_height="20dip">
   <TextView android:id="@+id/txtNickname" 
       android:layout_width="wrap_content"
    android:textColor="#1C86EE"
    android:text="mmLiu" android:layout_height="fill_parent"/>
   <ImageView android:id="@+id/verified" 
             android:layout_width="24dip"
          android:layout_height="24dip"
          android:paddingLeft="4dip"
          android:layout_toRightOf="@id/txtNickname"
          android:background="@drawable/verified"/>
      <TextView android:id="@+id/txtTime" 
       android:textColor="#999999" 
       android:layout_height="fill_parent" 
       android:layout_alignTop="@+id/txtNickname" 
       android:layout_alignRight="@layout/notice_item" android:layout_toRightOf="@+id/verified" android:layout_width="fill_parent" android:gravity="right" android:text="半个小时前"/>
  </RelativeLayout>
  <TextView android:id="@+id/txtContent" 
      android:layout_width="fill_parent"
   android:layout_height="wrap_content" 
   android:textColor="#050505"
   android:text="!时尚起义 波点连衣裙原价116,现价69素雅波点拼接长裙,素色上装搭配雪纺波点短裙,优雅恬静,非你莫属!【商家地址:http://1net.cn/8wf】#服饰#" android:clickable="true"/>
 </LinearLayout>
</LinearLayout>

Я надеюсь, что ссылки могут быть сосредоточены вместо всего предмета, эта проблема обсуждалась в Google IO, см. здесь и решение является getListView (). setitemscanfocus (true); Но это просто не работает для меня.

Я использовал скорбированный адаптер, который расширяет басдер, я не знаю, имеет ли это, что имеет с этим.

любой? любая помощь ?

Это было полезно?

Решение

Нашел решение самостоятельно:

Если вы хотите ссылку в TextView Clickable, вы должны добавить еще одну строку:

yourTextView.setMovementMethod(LinkMovementMethod.getInstance());

Помимо

getListView().setItemsCanFocus(true);

Это все.

Смотрите ссылку: здесь

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top