Android(安卓)实现部分文字高亮的三种方法
16lz
2021-12-04
Android 实现部分文字高亮的三种方法
1.利用SpannableString、SpannableStringBuilder 实现
textview=(TextView)findViewById(R.id.textview);SpannableStringBuilder style=new SpannableStringBuilder(strs);style.setSpan(new BackgroundColorSpan(Color.RED),start,end,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);style.setSpan(new ForegroundColorSpan(Color.RED),7,9,Spannable.SPAN_EXCLUSIVE_INCLUSIVE);textview.setText(style);
详细用法参考:http://blog.csdn.net/harvic880925/article/details/38984705
2.利用一个容易遗忘的Html.fromhtml方法,意思是可以将比如文本框中的字符串进行HTML格式化
先在Sting文件中定义一个html代码的字符串,如:"测试"Java代码TextView view = (TextView)findViewById(R.id.sampleText);String formattedText = getString(R.string.htmlFormattedText);Spanned result = Html.fromHtml(formattedText);view.setText(result);或者是这样写:view.setText(Html.fromHtml("今天礼拜五"));
3.利用开源库 HighlightTextView (https://github.com/angcyo/HighlightTextView)
使用方法:下载项目compile project(':highlighttextview')xml可用属性app:highlight_position="4" 高亮开始的位置app:highlight_num="3" 高亮的个数app:highlight_color="@color/colorAccent" 高亮的颜色 可用方法highlightTextView.setHighlightPosition(2);highlightTextView.setHighlightNum(3);highlightTextView.setHighlightColor(Color.MAGENTA);
更多相关文章
- 14 Android(安卓)android 按钮效果的两种实现方法
- Android链式方法显示Dialog
- Android(安卓)SQLite数据库
- [Android(安卓)Pro] android 杀死进程的方法
- Android(安卓)TextView支持的HTML标签
- Android(安卓)Studio3.3部分断点不生效解决方法
- Android(安卓)Activity之间跳转出现短暂黑屏的处理方法(转)
- Android(安卓)横向选择器(HorizontalPickerView.java)
- Android中的背景音频与MediaSessionCompat