Java Html<;a>;标记在Android textview中不起作用

Java Html<;a>;标记在Android textview中不起作用,java,android,android-layout,android-listview,textview,Java,Android,Android Layout,Android Listview,Textview,我试图在textview(驻留在listview中)中显示JSON结果。其中一个结果是必须显示为“查看结果”的URL。我使用以下代码将URL显示为“查看结果”: String result=”“+“\n”; bbieResults.put(“Result”,Html.fromHtml(Result)); 相关的xml布局: <TextView android:id="@+id/list_result" android:layout_width="wrap_content"

我试图在textview(驻留在listview中)中显示JSON结果。其中一个结果是必须显示为“查看结果”的URL。我使用以下代码将URL显示为“查看结果”:

String result=”“+“\n”;
bbieResults.put(“Result”,Html.fromHtml(Result));
相关的xml布局:

<TextView
    android:id="@+id/list_result"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/list_label"
    android:layout_marginLeft="10dp"
    android:autoLink="web"
    android:linksClickable="true"
    android:textSize="25dp" />

这个文本视图确实显示“查看结果”作为URL的标签,但我实际上无法单击它。那么我怎样才能使它成为一个可点击的超链接呢

提前感谢:)

当textview位于.xml文件和listview中时,这对我来说是有效的

当textview位于.xml文件和listview中时,这对我来说很有效。

您的解决方案就在这里

实现'me.saket:更好的链接移动方法:1.1'
留言?,留言?,让我来{
chatMessageTextView.setText(HtmlCompat.fromHtml(it.trim(),HtmlCompat.FROM\u HTML\u MODE\u LEGACY),TextView.BufferType.SPANNABLE)
}
chatMessageTextView.movementMethod=BetterLinkMovementMethod.newInstance().apply{
setOnLinkClickListener{},url->
//Handle单击或返回false以让框架处理此链接。
handleMessageLink(itemView.context,url)
符合事实的
}
}
您的解决方案就在这里

实现'me.saket:更好的链接移动方法:1.1'
留言?,留言?,让我来{
chatMessageTextView.setText(HtmlCompat.fromHtml(it.trim(),HtmlCompat.FROM\u HTML\u MODE\u LEGACY),TextView.BufferType.SPANNABLE)
}
chatMessageTextView.movementMethod=BetterLinkMovementMethod.newInstance().apply{
setOnLinkClickListener{},url->
//Handle单击或返回false以让框架处理此链接。
handleMessageLink(itemView.context,url)
符合事实的
}
}

谢谢,我已经在另一个活动中对此进行了测试,这确实是我想要的。但是,在这种特殊情况下,它会导致nullpointer异常。textview位于listview使用的自定义row.xml中。你能为我指出正确的方向,告诉我如何解决这个问题吗?谢谢,我已经在另一个活动中对此进行了测试,这确实是我想要的。但是,在这种特殊情况下,它会导致nullpointer异常。textview位于listview使用的自定义row.xml中。你能给我指出正确的方向,告诉我怎样才能解决这个问题吗?
<TextView
    android:id="@+id/list_result"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/list_label"
    android:layout_marginLeft="10dp"
    android:autoLink="web"
    android:linksClickable="true"
    android:textSize="25dp" />
textview.setMovementMethod(LinkMovementMethod.getInstance());
textview.setText(Html.fromHtml(str));
android:autoLink="web"
android:linksClickable="true"
 implementation 'me.saket:better-link-movement-method:1.1'

  

     message?.message?.let {
                chatMessageTextView.setText(HtmlCompat.fromHtml(it.trim(), HtmlCompat.FROM_HTML_MODE_LEGACY),TextView.BufferType.SPANNABLE)
            }

      chatMessageTextView.movementMethod = BetterLinkMovementMethod.newInstance().apply {
            setOnLinkClickListener { _, url ->
                // Handle click or return false to let the framework handle this link.

           
                handleMessageLink(itemView.context,url)
                true
            }
        }

         <TextView
                android:id="@+id/chat_message_text_view"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/files_layout"
                android:layout_marginStart="@dimen/space_ultra_small"
                android:text="@string/text_small"
                android:textColor="@color/black"
                android:padding="@dimen/space_ultra_small"
                android:textColorLink="@color/sky_blue"
                android:textSize="@dimen/text_size_large" />