SpannableString的简单用法
来源:互联网 发布:免费阿里云主机 编辑:程序博客网 时间:2024/05/21 15:44
按照我的理解SpannableString 举个例子:就是让我们做出向一些登录授权中,那几行字上有的会有下划线,或者点击文字,跳转网页,还有我们使用的QQ中发消息的时候,文字加表情,实现图文混排的效果等等。。。
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView name = (TextView) findViewById(R.id.name); //封装一个SpannableString SpannableString spannableString = new SpannableString("热烈庆祝十九大顺利召开,跟着党走是我的信念"); //背景色 spannableString.setSpan(new BackgroundColorSpan(Color.RED),2,5, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //前景色 spannableString.setSpan(new ForegroundColorSpan(Color.BLUE),2,5, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //下划线 spannableString.setSpan(new UnderlineSpan(),0,5, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //图片(图文混排) Drawable drawable = getResources().getDrawable(R.mipmap.ic_launcher); drawable.setBounds(0,0,80,80); spannableString.setSpan(new ImageSpan(drawable),5,6, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //加粗 spannableString.setSpan(new StyleSpan(Typeface.BOLD_ITALIC),7,9, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //下标 spannableString.setSpan(new SubscriptSpan(),7,9, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //超文本链接 spannableString.setSpan(new URLSpan("http://www.baidu.com"),10,12, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //点击事件 spannableString.setSpan(new ClickableSpan() { @Override public void onClick(View widget) { System.out.println("widget"+widget); } @Override public void updateDrawState(TextPaint ds) { super.updateDrawState(ds); //可以改变颜色 ds.setColor(Color.RED); ds.setUnderlineText(true); } },13,15,Spannable.SPAN_INCLUSIVE_EXCLUSIVE); name.setText(spannableString); //超文本需要加的代码 name.setMovementMethod(new LinkMovementMethod()); //输入框中 EditText et_name = (EditText) findViewById(R.id.et_name); SpannableString spannableString1 = new SpannableString("跟着党走是我的信念"); spannableString1.setSpan(new ForegroundColorSpan(Color.BLUE),0,4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); et_name.setText(spannableString1); }}
下面可以参考:
阅读全文
0 0
- SpannableString的简单用法
- SpannableString的简单用法
- Android SpannableString的简单用法(一)
- TextView—SpannableString的简单用法
- SpannableString 用法简单记录
- SpannableString的基本用法
- Android SpannableString 的用法
- SpannableString的基本用法
- SpannableString 的用法
- SpannableString的用法
- SpannableString的常用用法
- Android SpannableString的用法
- SpannableString的用法
- SpannableString的用法详解
- SpannableString的基本用法
- Android SpannableString的用法
- Android 中SpannableString的用法
- 关于SpannableString的一些用法
- 搬家到 http://mutex73.github.io
- 在Web.config或App.config中的添加自定义配置
- 【Python】2.3绘制等边三角形
- 高效开发-使用7.0 sdk 开发ViewPager 翻页每个ITem 居中
- Key Reinstallation Attacks
- SpannableString的简单用法
- sdut2772 KMP的简单应用
- WFP 驱动环境搭建(WIN10)和编译
- JMeter 保存响应到文件
- WCF调用
- Day 7
- 分布式文件系统
- Wellner 自适应阈值二值化算法
- 大数据时代:十大最热门的大数据技术