作为 Android ImageSpan 源的 Internet url

发布于 2024-12-11 08:32:39 字数 407 浏览 0 评论 0原文

是否可以为 ImageSpan 指定互联网网址并用 TextView 显示它?我已经尝试了很多版本,

String mockContent = "<img src=\"http://www.google.com/intl/en_com/images/srpr/logo3w.png\">";
myTextView.setText(Html.fromHtml(mockContent), BufferType.SPANNABLE);

但结果都是通用的未找到图像(蓝黑色边框的正方形)。

我是否必须先下载图像,然后替换所有网址等? 知道新的 C# 能够处理此类资源,我希望 Android 能够满足我的希望。

使用 API 版本 10:2.3.3。

is it possible to specify internet url for ImageSpan and get it shown with TextView? I've tried quite a few versions of

String mockContent = "<img src=\"http://www.google.com/intl/en_com/images/srpr/logo3w.png\">";
myTextView.setText(Html.fromHtml(mockContent), BufferType.SPANNABLE);

but that results in the generic not found image (blueish black bordered square).

Do I have to download the image first, then replace all the urls and so on?
Knowing the new C# is capable of handling such resources, I hoped Android might meet my hopes here.

Using API version 10: 2.3.3.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

于我来说 2024-12-18 08:32:39

如果您在本地有图像源,那么它应该可以工作,或者使用,

Html.fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)

从提供的 HTML 字符串返回可显示样式的文本。

我在网络上找到的很好的例子,

String s = Html.fromHtml(htmlContent, new ImageGetter() { 
        @Override
     public Drawable getDrawable(String source) {                   

        // Code for getting image either by download or using static iamge

         Drawable d = null;
        try { 
                    InputStream src = imageFetch(source); 
                    d = Drawable.createFromStream(src, "src");
                    if(d != null){
                       d.setBounds(0,0,(d.getIntrinsicWidth(),
                       d.getIntrinsicHeight());
                    }
            } catch (MalformedURLException e) { 
              e.printStackTrace();  
            } catch (IOException e) {
              e.printStackTrace();   
   } 


    return d;
    } 


  },null);

有关更多信息 Html.fromHtml 与 ImageGetter

If you have the image source locally then it should work or else use,

Html.fromHtml(String source, Html.ImageGetter imageGetter, Html.TagHandler tagHandler)

Returns displayable styled text from the provided HTML string.

Nice example I found on web,

String s = Html.fromHtml(htmlContent, new ImageGetter() { 
        @Override
     public Drawable getDrawable(String source) {                   

        // Code for getting image either by download or using static iamge

         Drawable d = null;
        try { 
                    InputStream src = imageFetch(source); 
                    d = Drawable.createFromStream(src, "src");
                    if(d != null){
                       d.setBounds(0,0,(d.getIntrinsicWidth(),
                       d.getIntrinsicHeight());
                    }
            } catch (MalformedURLException e) { 
              e.printStackTrace();  
            } catch (IOException e) {
              e.printStackTrace();   
   } 


    return d;
    } 


  },null);

For more info Html.fromHtml with ImageGetter.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文