我有一个应用程序,需要一个富文本编辑器。
我打算实现这使用span或分配一个html代码作为textview的文本。
我可以用同样的方式添加一个复选框吗?
要在TextView
中显示html,您应该首先使用Html.fromHtml()
转换为Spanned
。但是在这种方法中只能使用一个小的HTML标记子集,因为可伸缩表用于样式化文本。如果您想添加复选框,那么您应该在TextView
之外执行此操作。
从TextView
扩展到CheckBox
,您可以使用setText
方法与Spannable
。
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(poweredBy + " " + company);
int start = poweredBy.length();
int end = spannableStringBuilder.length();
spannableStringBuilder.setSpan(new ForegroundColorSpan(companyColor), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
checkbox.setText(spannableStringBuilder);