安卓截取字符串,TextView显示并颜色标记+点击事件
对字符串中的多个带标记的字段,进行标记,并赋予点击事件。难点在于你如何处理字符串。
废话少说,直接进入正题
场景
要解析的字符串示例:
String str = "请问你是要查询<s>无线告警</s>还是下面的这些告警信息呢?<br />*<s>传输告警</s><br />*<s>故障单告警</s>(仅支持AGZ工单)<br />*<s>割接单告警</s><br />";
要求:将以上字符串以文本的形式展示出来,其中<s></s>中间的内容需红色显示,且点击该字体时弹出该内容,<br />为换行符,进行换行。
结果大概就这个样子:
plan 1
思路:使用split(String str)方法分割字符串,获取每个需要标记的字符串的起始和结束的位置,再使用SpannableStringBuilder进行文字标记及点击事件的处理。
上代码
public class SpannableStringBuilderActivity extends AppCompatActivity {
private static final String TAG = "Spannabl