2012-06-24 39 views
4

我在db中的数据以html格式存储在图像标记中。所以当我从数据库中获取数据时,我将删除html标签并将其设置为textview。我的问题是,即使在删除html标签后,在模拟器中显示一个小方框,表示存在一些图像。我怎样才能删除模拟器中的那个方框,这是HTML数据中图像的指示?帮我对此...如何在android中跳过html数据中的图片标签?

在此先感谢

我的代码:

textView.setText(Html.fromHtml(htmlString)); 

回答

18

你可以做一个正则表达式替换<img.+?>htmlString

textView.setText(Html.fromHtml(htmlString.replaceAll("<img.+?>", ""))); 

未经测试

+0

嗨,感谢您的回复......您能举个例子吗? – user1448108

+0

我在上面的答案中添加了示例(或直接答案 - 未经测试)。干杯! – Ruel

+0

感谢哥们,它工作。 – maverickosama92

0

喜对这个例子

 String temp="<img>helloo</img><b> this is test</b>"; 
    temp= temp.replace("<img>", ""); 
    temp= temp.replace("</img>", ""); 
      textView.setText(Html.fromHtml(temp)); 
7

看看,因为图像可以看起来像:

<img ...></img> 

<img... /> 

该解决方案将符合这两种情况下:

String htmlBody = htmlString.replaceAll("<img.+/(img)*>", ""); 
textView.setText(Html.fromHtml(htmlBody)); 
1

的答案都不能够消除所有可能的img标签。

最合适的答案将是

String htmlBody = htmlString.replaceAll("(<(/)img>)|(<img.+?>)", ""); 

它将删除和标签两者。而不是删除两个图像之间的任何内容。

相关问题