您的位置:首页 > 移动开发 > Android开发

TextView设置删除线标记文本等(SpannableString)

2016-03-22 11:24 531 查看
TextView txtInfo =(TextView)findViewById(R.id.tv);
        //SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离。
        //可变文本类参考SpannableStringBuilder
        SpannableString
ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:."); 
        //用颜色标记文本
        ss.setSpan(new
ForegroundColorSpan(Color.RED), 0, 2,  
                //setSpan时需要指定的
flag,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括).
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用超链接标记文本
        ss.setSpan(new
URLSpan("tel:4155551212"), 2, 5,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用样式标记文本(斜体)
        ss.setSpan(new
StyleSpan(Typeface.BOLD_ITALIC), 5, 7,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用删除线标记文本
        ss.setSpan(new
StrikethroughSpan(), 7, 10,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用下划线标记文本
        ss.setSpan(new
UnderlineSpan(), 10, 16,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //用颜色标记
        ss.setSpan(new
ForegroundColorSpan(Color.GREEN), 10, 13,  
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //获取Drawable资源
        Drawable
d = getResources().getDrawable(R.drawable.icon);  
        d.setBounds(0,
0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
        //创建ImageSpan
        ImageSpan
span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息