
解决:android TextView上响应部分文字的事件
发布日期:2021-05-08 01:24:09
浏览次数:12
分类:精选文章
本文共 1889 字,大约阅读时间需要 6 分钟。
运行结果如下:
TtActivity.java
public class TtActivity extends Activity {
/* * Called when the activity is first created. */ private TextView tv; static Context ctx = null ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ctx = this ; tv = (TextView) findViewById(R.id.tv); // String htmlLinkText= " <a href=\" http://www.csdn.net/CAIYUNFREEDOM/\"><u>我的CSDN博客 </u></a>"; // tv.setText(Html.fromHtml(htmlLinkText)); tv.setMovementMethod(LinkMovementMethod.getInstance()); CharSequence text = tv.getText(); if (text instanceof Spannable){ int end = text.length(); Spannable sp = (Spannable)tv.getText(); URLSpan[] urls = sp.getSpans( 0 , end, URLSpan. class ); SpannableStringBuilder style = new SpannableStringBuilder(text); style.clearSpans(); // should clear old spans for (URLSpan url : urls){ MyURLSpan myURLSpan = new MyURLSpan(url.getURL()); style.setSpan(myURLSpan,sp.getSpanStart(url),sp.getSpanEnd(url),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } tv.setText(style); } } private static class MyURLSpan extends ClickableSpan{ private String mUrl; MyURLSpan(String url) { mUrl = url; } @Override public void onClick(View widget) { // TODO Auto-generated method stub Toast.makeText(ctx, ""+mUrl ,Toast.LENGTH_SHORT).show(); } } }main.xml
<?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" > <TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources> <string name="hello">局部事件1 <a href="1" ><u>hello1</u></a>,事件2<a href="2" ><u>hello2</u></a></string> <string name="app_name">Tt</string> </resources>发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月03日 23时12分29秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Oracle 11G环境配置
2021-05-08
【Spark】(六)Spark 运行流程
2021-05-08
你还不会在CentOS7上安装Docker嘛?
2021-05-08
Docker命令锦集
2021-05-08
【Python】(十二)IO 文件处理
2021-05-08
【Oozie】(三)Oozie 使用实战教学,带你快速上手!
2021-05-08
师兄面试遇到这条 SQL 数据分析题,差点含泪而归!
2021-05-08
Java面试题——基础篇
2021-05-08
Java8新特性——并行流与顺序流
2021-05-08
阿里云大数据ACP(四)机器学习 PAI
2021-05-08
如何通过 Dataphin 构建数据中台新增100万用户?
2021-05-08
C语言的数值溢出问题(上)
2021-05-08
BottomNavigationView控件item多于3个时文字不显示
2021-05-08
函数指针的典型应用-计算函数的定积分(矩形法思想)
2021-05-08
8051单片机(STC89C52)八个LED灯闪烁
2021-05-08
8051单片机(STC89C52)以定时器中断模式实现两倒计时器异步计时
2021-05-08
ament: command not found ROS2
2021-05-08
双变量的t检验
2021-05-08
用 wxPython 打印你的 App
2021-05-08