SpannableString可以被点击的文字
1 TextView tv= (TextView) findViewById(R.id.textview_z); String text="一段可以被点击点击的文字,文字可以变成图片"; SpannableString spannableString=new SpannableString(text); ImageSpan imagespan=new ImageSpan(MainActivity.this,R.mipmap.fu); //设置5-7之间的字符为图片 spannableString.setSpan(imagespan,5,7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); //设置8-9之间的字符可以被点击 ClickableSpan click=new ClickableSpan() { @Override public void onClick(View widget) { Toast.makeText(MainActivity.this,"文字被点击了",Toast.LENGTH_SHORT).show(); } }; spannableString.setSpan(click,8,9,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); tv.setText(spannableString); //如果设置了文字的点击事件,就必须设置这个方法,文本的点击处理方法 tv.setMovementMethod(new LinkMovementMethod());
//edittext 也可以用spannableString
EditText edittext= (EditText) findViewById(R.id.edittext_z);
String htmlString = "<html>\n" +
" <head></head>\n" +
" <body>\n" +
" 哈哈哈\n" +
" <a href=\"http://m.oschina.net/u/993896\" class=\"referer\">@WoshiWo</a> 我点你了噢 \n" +
" </body>\n" +
"</html>";
//spanned 是 接口继承CharSequence ,把String 变成对象Html
final Spanned html = Html.fromHtml(htmlString);
SpannableString spannableString1=new SpannableString(html);
ImageSpan what1=new ImageSpan(MainActivity.this,R.mipmap.fu);
spannableString1.setSpan(what1,0,1,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
edittext.setText(spannableString1);
edittext.setMovementMethod(new LinkMovementMethod());
//spannableString.setSpan(what,5,7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
what参数可以设置下面的属性,来更改SpannableString的样式

SpannableString可以被点击的文字的更多相关文章
- 鼠标点击输入框文字消失 value placeholder 以及JQ实现效果 (仿京东的输入框效果)
鼠标点击输入框文字消失 value实现方法 placeholder实现方法 以及JQ实现placeholder效果 <input type="text" value ...
- 点击按钮文字变成input框,点击保存变成文字
<!DOCTYPE html><html lang="en"> <head> <meta http-equiv="Content ...
- jquery - 通过点击切换文字内容
今天要写一个简单的显示/隐藏效果,本以为是挺简单的事儿,没想到还真因为基本功不扎实遇到了问题,这里跟大家分享一下. 百度了很多方法,精简能用的干货实在太少,最后还是通过去查jq的官方api才找到了解决 ...
- 点击复制文字到剪贴板兼容性安卓ios
一般那种活动H5分享可能会用到点击复制文字到剪贴板,很简单的功能 于是搜了一搜:js复制文字到剪贴板,可用结果大致分为两类: 一类是js原生方法,这种方法兼容性不好,不兼容ios: https://d ...
- Android TextView 嵌套图片及其点击,TextView 部分文字点击,文字多颜色
1. TextView 中嵌套图片的方法 TextView textView... textView.setText("..."); textView.append(Html.fr ...
- UITextView 点击添加文字 光标处于最后方
#import "ViewController.h" @interface ViewController ()<UITextViewDelegate> @end @im ...
- jQuery插件之jquery editable plugin--点击编辑文字插件
jeditable是一个jquery插件,它的优点是可以就地编辑,并且提交到服务器处理,是一个不可多得的就地编辑插件.(注: 就地编辑,也有称即时编辑?一般的流程是这样的,当用户点击网页上的文字时,该 ...
- Jeditable 点击编辑文字插件
Jeditable - jQuery就地编辑插件使用 jeditable是一个jquery插件,它的优点是可以就地编辑,并且提交到服务器处理,是一个不可多得的就地编辑插件.(注: 就地编辑,也有称 ...
- Android开发经验之在图片上随意点击移动文字
只要在图片范围之内,文字可随意点击移动. package xiaosi.GetTextImage; import android.content.Context; import android.con ...
随机推荐
- javascript full screen 全屏显示 页面元素
javascript full screen 全屏显示 页面元素 要想让页面的某个元素全屏显示,就像在网页上看视频的时候,可以全屏观看一样,该怎么实现呢? 一种最简单的方式,就是动态改变你想要全屏显示 ...
- Python:Python学习总结
Python:Python学习总结 背景 PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#.@.@@也好不到哪里(OO人员最该学习的一门语言). Pyth ...
- IoC in Spring
写两个关于Spring中使用IoC的小例子,一个是半动态创建Bean,另一个是全动态创建Bean,它们适合不同的应用场景. 一.半动态:在一个实际项目中遇到过这样的问题,项目组开发的某个系统具备在LE ...
- opencv编程入门技巧
opencv编程入门技巧 最近在项目中负责图像处理模块的编程工作,主要分为两个板块,一是视频图像去雾,二是可视.红外图像融合.为了提升开发效率,遂开始学习并使用opencv图像类库,效果很好的说~因为 ...
- Winform 让跨线程访问变得更简单
Winform 让跨线程访问变得更简单 前言 由于多线程可能导致对控件访问的不一致,导致出现问题.C#中默认是要线程安全的,即在访问控件时需要首先判断是否跨线程,如果是跨线程的直接访问,在运行时会抛出 ...
- TOGAF架构内容框架之内容元模型(上)
TOGAF架构内容框架之内容元模型(上) 2. 内容元模型(Content Metamodel) 在TOGAF的眼中,企业架构是以一系列架构构建块为基础的,并将目录.矩阵和图形作为其具体展现方式.如果 ...
- hdu 1728 搜索求最少的转向次数
逃离迷宫 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- java--九九乘法表
/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作者:邱学伟 * 完成日期:2013 年 7 月 ...
- 开发一个微信小程序项目教程
一.注册小程序账号 1.进入微信公众平台(https://mp.weixin.qq.com/),注册小程序账号,根据提示填写对应的信息即可.2.注册成功后进入首页,在 小程序发布流程->小程序开 ...
- es6 Module
前言: 这是阮一峰老师的ECMA6入门module一章的缩减,只抽取了我在项目中有用到的内容.带着问题去看老师的教程.感觉吸收更快,也明白了偶尔遇到的export不出来的问题. es6模块设计思想: ...