TextView mText = (TextView) findViewById(R.id.text2); //SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离。 mText.setText("SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离"); //可变文本类参考SpannableStringBuilder SpannableString span = new SpannableString("红色打电话斜体删除线绿色下划线图片:."); //用颜色标记文本 span.setSpan(new ForegroundColorSpan(Color.RED), 0, 2, //setSpan时需要指定的 flag,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括). Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用超链接标记文本 span.setSpan(new URLSpan("tel:4155551212"), 2, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用样式标记文本(斜体) span.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用删除线标记文本 span.setSpan(new StrikethroughSpan(), 7, 10, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用下划线标记文本 span.setSpan(new UnderlineSpan(), 10, 16, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用颜色标记 span.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 13, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //获取Drawable资源 Drawable d = getResources().getDrawable(R.mipmap.ic_launcher); d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight()); //创建ImageSpan ImageSpan iSpan = new ImageSpan(d, ImageSpan.ALIGN_BASELINE); //用ImageSpan替换文本 span.setSpan(iSpan, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE); mText.setText(span);textview滚动显示视图url地址
SpannableString文本类详解
最新推荐文章于 2021-12-27 16:32:38 发布