Android超链接
Android 超链接
2023-09-14 08:59:11 时间
第一种:
text += "<a href='http://www.baidu.com'>百度超链接</a>";
CharSequence charSequence = Html.fromHtml(text);
textview.setText(charSequence);
textview.setMovementMethod(LinkMovementMethod.getInstance());
Html.fromHtml为什么返回CharSequence?
答:TextView是不只可以String的,我们平常用的给setText()方法传递String参数的时候,其实是调用的public final void setText (CharSequence text)方法,String类是CharSequence的子类。
而CharSequence子类众多,其中有一个接口Spanned,即类似html的带标记的文本。我们可以用它来在TextView中显示html(自然,有很多html标记是不支持的,只支持一部分)。
第二种:
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="all" />
textview = (TextView) findViewById(R.id.textview);
String str = "我的号码:13926190296\n";
str += "百度的网址:http://www.baidu.com";
textview.setText(str);
textview.setMovementMethod(LinkMovementMethod.getInstance());
第三种:
textview = (TextView) findViewById(R.id.textview);
String text = "百度连接\n";
SpannableString str = new SpannableString(text);
Object obj = new URLSpan("http://www.baidu.com");
str.setSpan(obj, 0, 4, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
textview.setText(str);
textview.setMovementMethod(LinkMovementMethod.getInstance());
第四种(图片做链接):
String text = "百度链接";
SpannableString str = new SpannableString(text);
Resources resources = getResources();
Bitmap bitmap = BitmapFactory.decodeResource(resources, R.drawable.ic_launcher);
Object obj0 = new ImageSpan(MainActivity.this,bitmap);
Object obj1 = new URLSpan("http://www.baidu.com");
str.setSpan(obj0, 0, 4, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
str.setSpan(obj1, 0, 4, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
textview.setText(str);
textview.setMovementMethod(LinkMovementMethod.getInstance());
注:
textview.setMovementMethod(LinkMovementMethod.getInstance());
是必须要的
相关文章
- android scaleanimation动画,【Android动画九章】-RotateAnimation(旋转动画)和ScaleAnimation(尺寸动画)…[通俗易懂]
- Android常用加密方式
- android移动点餐系统内容和要求,基于Android云计算的移动点餐系统
- android签名命令行,Android系统签名位置及命令
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案
- android如何获取证书签名?
- android 模拟器 haxm,Android模拟器不使用HAXM
- android 自定义控件 使用declare-styleable进行配置属性(源码角度)「建议收藏」
- android定时器取消,Android定时器崩溃取消
- android短信验证码方案,Android之短信验证码
- Android Key获取方式
- iphone4装android,iPhone4可安装Android实现双系统启动.pdf
- android toast显示时间,Android Toast自定义显示时间「建议收藏」
- android 倒计时控件_安卓倒计时
- android attrs获取_关于Android attrs 自定义属性的说明
- 原创Paper | 在 Android 中开发 eBPF 程序学习总结(一)
- 【Android 应用开发】Android - 时间 日期相关组件
- 【Android 应用开发】Android 返回堆栈 与 任务
- 【错误记录】Android Studio 编译报错 ( Could not find com.android.tools.build:gradle:4.2.1. )
- Android开发学习总结(二)——使用Android Studio搭建Android集成开发环境详解手机开发
- android Universal Image Loader for Android 说明文档 (1)详解手机开发
- android PakageManagerService启动流程分析详解手机开发
- Android 中的 Wi-Fi 直连方式的 Bug 会导致拒绝服务
- Connecting Android to Oracle: The Ultimate Guide for Seamless Integration.(android连接oracle)
- android自定义Android菜单背景的代码
- Android笔记之:App模块化及工程扩展的应用
- Android笔记之:深入为从右向左语言定义复杂字串的详解
- Android中的Adapter简单介绍
- 在Android线程池里运行代码任务实例
- Android中检查、监听电量和充电状态的方法