`
h416756139
  • 浏览: 359815 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TextView中显示HTML和图片

阅读更多

        在TextView中显示HTML内容的方法如下所示:

TextView description=(TextView)findViewById(R.id.description);

description.setText(Html.fromHtml(item.getDescription()));

 

       如果HTML中有图片的话,显示出来的图片会被一个小框取代,那么怎么样才能看到图片呢?查看了一下API,android.text.Html还还有另一个方法:Html.fromHtml(String source,ImageGetter imageGetter,TagHandler tagHandler),这个方法使用如下所示:

 

ImageGetter imgGetter = new Html.ImageGetter() {

      public Drawable getDrawable(String source) {

      Drawable drawable = null;

     Log.d("Image Path", source);

     URL url;

   try {

          url = new URL(source);

         drawable = Drawable.createFromStream(url.openStream(), "");

    } catch (Exception e) {

           return null;

      }

 drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable

                    .getIntrinsicHeight());

            return drawable;

        }

    };

.........

 

TextView description=(TextView)findViewById(R.id.description);

description.setText(Html.fromHtml(item.getDescription(),imgGetter,null));

 

        怎么样?很简单,第二个参数TagHandler是干什么的呢?从名称我们就知道是处理HTML中的标签的,比如说遇到某个标签就把它替换为….之类的操作都可以通过TagHandler来处理,呵呵,我可没试过哦,瞎猜的,程序员一定要发挥充分的想像力,自己去试一下吧!最后我要说的是,如果你的图片是从网络上获取的,那么你一定不要用这种方法显示一张图片,因为这是最垃圾的办法,你的程序会经常被卡死。

那么有没有更好的方法呢?也许不是最好,但我建议您可以使用WebView来显示HTML内容。转自:http://www.ideasandroid.com/archives/378

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics