Android 的实现TextView中文字链接的方式有很多种。
总结起来大概有4种:
1.当文字中出现URL、E-mail、电话号码等的时候,可以将TextView的android:autoLink属性设置为相应的的值,如 果是所有的类型都出来就是android:autoLink="all"。当然也可以在java代码里 做,textView01.setAutoLinkMask(Linkify.ALL);
2.将要处理的文字写到一个资源文件,如string.xml,然后的java代码里引用(直接写在代码了是不可行的,会直接把文字都显示处理)
3.用Html类的fromHtml()方法格式化要放到TextView里的文字
4.用Spannable或实现它的类,如SpannableString来格式,部分字符串。
最后记得加上:
textView.setMovementMethod(LinkMovementMethod.getInstance());
例子:
setContentView(R.layout.test);
String source = "<b><font color=#ff0000> Html View using TextView"
+ "</font></b><br><br><a href='http://www.AndroidPeople.com'>AndroidPeople.com</a>"
+ "<br><br><a href='http://www.Android.com'>Android.com</a>";
TextView textView = (TextView) findViewById(R.id.TextView01);
textView.setText(Html.fromHtml(source));
// Used to enable links in textview.
textView.setMovementMethod(LinkMovementMethod.getInstance());
或者:
TextView textView01 = (TextView) findViewById(R.id.textView01);
textView01.setAutoLinkMask(Linkify.ALL);
String autoLinkText = "http://www.iteye.com";
textView01.setText(autoLinkText);
部分连接:
SpannableString ss = new SpannableString("call: 4155551212.");
ss.setSpan(new StyleSpan(Typeface.BOLD), 0, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
ss.setSpan(new URLSpan("tel:4155551212"), 6, 16, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView04.setText(ss);
textView04.setMovementMethod(LinkMovementMethod.getInstance());
这里只指定4155551212部分为连接而已
分享到:
相关推荐
android实现TextView文字部分渐变色;LinearGradientFontSpan SpannableString
Android自定义TextView实现动态的文字效果
Android实现TextView文字滚动
主要介绍了Android实现在TextView文字过长时省略部分或滚动显示的方法,结合实例形式分析了Android中TextView控件文字显示及滚动效果相关操作技巧,需要的朋友可以参考下
Android SpannableString实现TextView不同大小文字居中显示。
Android实现TextView部分文本监听单击事件
本文实例讲述了Android TextView实现垂直滚动效果的方法。分享给大家供大家参考,具体如下: 在TextView中,如果文本很长,可能需要实现垂直滚动显示文本的效果。这里需要在XML布局文件中为TextView设置如下几个属性...
LinearGradient实现TextView字体渐变的效果
android三种方式实现TextView跑马灯效果
Android textview 文字中间加上图片
Android TextView 个别文字字体颜色格式
android TextView android TextView
在Android中用textview实现简单的小说分页,字体可调节,未对字符串进行任何操作,分段和控制格式自行对字符串操作
有时候看到原型图上要求图片和文字对齐,但是直接使用TextView的话总是有一段空白,这里直接继承TextView重写onDraw方法去掉上下边距,但是简单粗暴,导致只能显示文字,没有TextView其他的功能了。
如果我们的应用需要显示时间,可能首先想到大街上LED显示的绿色的发光字体, 想到 使用时钟控件显示时间,这种效果,我们用 TextView 就可以实现。具体看博客说明:编辑文章 - 博客频道 - CSDN.NET ...
Android 设置textview某段字体颜色或者背景
解决 TextView 中文、英文、数字、符号 排版问题,注释很清晰,5分绝对值了,
Android流式TextView,类似文字标签。
这是一个关于TextView上下滚动的效果,详情请前往博客浏览http://blog.csdn.net/u014452224/article/details/53101507