一、问题描述
通常我们开发Android的时候免不了要和服务器有数据交互,当然简单的数据中是不会带有html格式的,因为我们在后台添加数据时都会利用<input/>或者<textarea/>进行添加。那么我们如果利用插件(比如feckeditor进行在线编辑文字),那么 存储到数据库中的文章就会如图:
带有html标记的文字信息。这种文字信息在Android中不能够直接显示,那么怎么让其在Android中显示又能够保持其原有的段落、空格、加粗等格式信息呢?????
二、解决办法
利用 Spanned HTML.fromhtml(String s);括号里面填写带有html格式的String字符串。Spanned类型可以直接放到TextView中,如TextView text=(TextView)findById(R.id.text);
text.setText(HTML.fromhtml("<p>第一段</p>
<p>第二段</p>"));
显示结果是两行。
三、注意事项
通常我们利用json与服务器传递数据,那么我们从服务器将String类型并且带有html标记的字符串传递过来时一定要在开头和结尾加双引号,否则json数据解析时遇到分号就会停止。如<p>第一段 </p><p>第二段</p>从服务器封装到json中时要变成"<p>第一段</p><p>第二段</p>",这样Android端解析式才会正常。
如何给字符串加双引号 String ss=""\"abc"\"";
这样字符串变成"abc"