我在点击链接时遇到问题。
您可以使用以下链接显示链接:
<ListView
android:id="@+id/newsListview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:linksClickable="true"
android:autoLink="all"
>
</ListView>
// **s** contains mixed text with multiple links in
textview.setText(Html.fromHtml(s));
但是,在文本视图中单击,该事件将被
捕获 OnItemClickListener eventClickListener = new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
MyListItemExt data = myItemsDataArrayList.get(position);
//...
Intent paramIntent = new Intent(thisActivityContext, Browser.class);
//...
}
}
newsListView.setOnItemClickListener(eventClickListener);
有些人建议使用
textview.setMovementMethod(LinkMovementMethod.getInstance());
但是1)它似乎禁用所有链接和2)我不明白阅读文档为什么这会有所帮助
现在,我已经看到了一些关于使用意图过滤器的建议(以避免外部浏览器打开),但只要点击被listview捕获,我认为它不会产生任何差异,因为链接点击是据我所知,并没有全部抓住。
答案 0 :(得分:0)
在textview的XML中,添加行
android:autoLink="web"
android:textIsSelectable="false"
然后,对于整个视图(包含行的线性或相对布局),在onClickListener
中添加getView()
。它并不优雅,但它是我以前必须这样做的方式。