TextView chatOutput = (TextView) findViewById(R.id.textView4);
chatOutput.setText("", BufferType.SPANNABLE);
void updateChatOutput {
String previous = Html.toHtml((Spannable) chatOutput.getText());
if (!previous.equals("")) {
if (previous.substring(0, 13).equals("<p dir=\"ltr\">"))
previous = previous.substring(13, previous.length()-3); //remove <p dir="ltr"> and </p>
else
previous = previous.substring(3, previous.length()-3); //remove <p> and </p>
}
chatOutput.setText(Html.fromHtml(message.substring(2, message.length()) + "<br>" + previous));
}
弄清楚了。将演员表更改为 Spannable 并使用带有 BufferType.SPANNABLE 的 setText 方法解决了原始问题。
然后出现了一个后续问题,textview 中出现了奇怪的线路制动。原来在这个过程中的某个地方添加了html-paragraph代码,手动删除它时下面的丑陋解决方案。当我意识到段落语句中的附加参数是由具有 API 18 的设备添加时,解决方案变得更加俗气,将我的测试设备与 API 8 进行了比较。