android:如何在textview中显示图像

时间:2011-10-14 04:30:21

标签: android html textview

如何在textview中显示html的图像? 这是资源

<blockquote>小浪观剧团:<p>【郭德纲《今夜有戏-济公传》】@北京德云社 15周年庆@郭德纲 相声专场演出,最新一季《济公传》,天津卫视@今夜有戏 整合全程播出。 http://t.cn/asLuvf 点击进入“德云社15周年系列演出新浪独家视频专题”http://t.cn/aogRf9<br/><a href='http://ww3.sinaimg.cn/large/5e1f33eftw1dm3fva4u3lj.jpg' target='_blank' ><img src='http://ww3.sinaimg.cn/thumbnail/5e1f33eftw1dm3fva4u3lj.jpg'><\/a><\/p><blockquote><p><a href='javascript:Action(\"sinat:qq357068756@163.com\",\"RT:3368361715304896\",\"\")'><img src='http://www.shisoft.net/images/retweet.png' /><\/a><\/p>

我知道我应该使用Html.fromHtml(String source,Html.ImageGetter imageGetter,Html.TagHandler tagHandler)

但我不知道如何获得ImageGetter,任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:4)

这对我有用,

  

实现ImageGetter简单明了;您传递ImageGetter对象以用于获取稍后将用于填充占位符的图像。为了获取图像,ImageGetter对象必须实现getDrawable方法。 getDrawable方法必须返回将填充占位符的Drawable对象;但是,如果返回null,则将使用通用图像占位符(请参阅下面的实现)。

对于ImageGetter,您需要覆盖以下方法:

public Drawable getDrawable (String  source)

要首先在文本文件中从应用程序资源获取图像,请插入一个html图像标记,如下所示:

<img src="my_image">

请注意,“my_image”只是一个drawable的名称,而不是一个路径。然后使用此代码在TextView

中使用图像显示文本
  myTextView.setText(Html.fromHtml(myText, new ImageGetter() {                 
    @Override
    public Drawable getDrawable(String source) {
     Drawable drawFromPath;
     int path = myActivity.this.getResources().getIdentifier(source, "drawable", "com.package..."); 
     drawFromPath = (Drawable) myActivity.this.getResources().getDrawable(path);
     drawFromPath.setBounds(0, 0, drawFromPath.getIntrinsicWidth(), drawFromPath.getIntrinsicHeight());
     return drawFromPath;
    }
}, null));