`

android TextView呈现图片方式

 
阅读更多
根据网上资料,为了方便资料查询,现在开始把一些项目中遇到的问题和比较好的方法进行总结,今天对TextView呈现图片方式提供2种方法
第一种是基于该图片不在drawable下面,只提供路径的方式,如相册中的,网络中的等
    /**
     * 通过textview显示
     * @author ljl
     * @createtime Dec 5, 2012 3:53:06 PM
     * @param htmlString
     * @return
     */
   public CharSequence formatString(String htmlString) {

    CharSequence ch = Html.fromHtml(htmlString, new ImageGetter() {
        @Override
        public Drawable getDrawable(String source) {
            Drawable drawable = Drawable.createFromPath(source);
            drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight());
            return drawable;
        }
    }, null);

    return ch;
   }

调用方式:
后面就可以TextView.setText(formatString("<img src='"+file.getPath()+"' />"));
第二种方式,该图片在drawable下面
   public CharSequence formatString(String htmlString) {

    CharSequence ch = Html.fromHtml(htmlString, new ImageGetter() {
        @Override
        public Drawable getDrawable(String source) {
            // TODO Auto-generated method stub
            Drawable drawable = getResources().getDrawable(getResourceId(source));
            drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight());
            return drawable;
        }
    }, null);

    return ch;
   }
   // 利用反射机制,通过资源名字得到资源的ID
   public int getResourceId(String name) {
    try {
        Field field = R.drawable.class.getField(name);
        return Integer.parseInt(field.get(null).toString());
    } catch (Exception e) {
        // TODO: handle exception
    }
    return 0;
   }

调用方式:TextView.setText(formatString("<img src='aaa' />"));
其中aaa就是代表R文件中的应用id名字,该方式的方法需要写在activity中。
分享到:
评论

相关推荐

    MTextView,解决Android TextView提前换行的问题

    总的来说,MTextView是Android开发中解决TextView提前换行问题的一个有效工具,它通过优化布局算法,使得图文混排的内容能在屏幕上更美观地呈现。对于那些对文本显示有较高要求的应用,自定义如MTextView这样的组件...

    android Textview显示带html文本、图片

    通过以上方法,我们可以让`TextView`不仅展示普通文本,还能展示带有格式的HTML文本和图片,极大地丰富了界面的呈现形式。在实际项目中,根据具体需求选择合适的方法,既能满足功能,又能保证性能和安全性。

    Android TextView显示html样式的文字

    Android提供了一个方便的方法`Html.fromHtml(String str)`,使得我们可以在TextView中轻松地呈现HTML格式的字符串。 `Html.fromHtml(String str)`方法的使用非常直观,它接受一个包含HTML标签的字符串作为参数,并...

    Android模糊处理简单实现毛玻璃效果

    实现效果大家都知道了,如何在Android中实现呢,说白了就是对图片进行模糊化处理,小编先给大家讲一下Android高级模糊技术的原理,如下: 首先我创建了一个空的bitmap,把背景的一部分复制进去,之后我会对这个...

    Android例子源码20多种TextView文字效果例子

    18. **列表项效果**:使用` android:drawableLeft`、`android:drawableRight`等属性,可以添加图标或图片,创建类似列表项的布局。 19. **触摸反馈**:利用`android:backgroundTint`和`android:state_activated`,...

    在TextView中输入图片

    在Android开发中,TextView是用于显示文本的基本组件,但其实它并不局限于纯文本展示,还可以进行图文混排,实现更加丰富的界面效果。本篇将详细讲解如何在TextView中插入图片,以及涉及到的相关知识点。 首先,...

    Android使用selector修改TextView中字体颜色和背景色的方法

    总之,通过使用Selector,开发者可以轻松地为TextView创建丰富的交互效果,使其在不同状态下呈现出不同的视觉表现。同时,结合编程方式处理事件,可以实现更多自定义的交互行为。熟练掌握Selector的使用,对于提升...

    Android切图注意事项

    在Android应用开发中,UI设计和切图是至关重要...总之,Android切图需要考虑多分辨率适配、9-Patch的使用、状态变化、资源复用以及详细的标注信息,这些都是为了保证应用在各种设备上都能呈现出一致且优秀的视觉效果。

    SpannableStringBuilder让TextView实现炫酷效果

    通过使用`SpannableStringBuilder`,我们可以让`TextView`呈现出丰富多彩、动态变化的效果,从而提升用户体验。`SpannableStringBuilder`是Android SDK提供的一种可变的、支持文本样式操作的字符串类,它允许我们在...

    可以显示富文本的TextView.zip

    因此,自定义的富文本TextView扩展了这个功能,使开发者能够轻松地在应用中呈现更丰富的信息。 2. **自定义TextView**: 自定义控件在Android开发中是常见的做法,它允许开发者根据项目需求扩展或修改标准控件的...

    android实现将图片以ascall码形式展现

    在Android平台上,将图片转换为ASCII艺术是一种独特的视觉呈现方式,它通过将图像像素与不同ASCII字符对应,形成一种文字图像。本项目标题"android实现将图片以ascall码形式展现"表明我们要讨论如何在Android应用中...

    textview完美展示html格式代码.rar

    本资源"testview完美展示html格式代码.rar"提供了一种解决方案,使得在TextView中能够完美地呈现HTML内容,包括自定义图片大小和实现点击浏览功能。 首先,我们要理解Android系统默认的TextView并不支持直接解析...

    15款强大android布局图片浏览电子阅读

    图片浏览和电子阅读功能是许多移动应用的重要组成部分,尤其是在Android平台上,因为它们为用户提供了一种直观且吸引人的内容消费方式。下面我们将详细探讨15款强大的Android布局技术以及如何在这些布局中实现图片...

    一个可以展示Html内容的的自定义TextView.zip

    通过将HTML标签解析为Spanned,我们可以保留原始HTML的格式,如字体颜色、大小、粗体、斜体等,并在TextView中正确地呈现出来。 项目标签为"开源项目",这意味着源代码对所有人开放,开发者可以查看、学习、修改并...

    android教程之textview解析带图片的html示例

    在Android开发中,有时我们需要在TextView中展示包含HTML格式的内容,比如带有文本样式、超链接以及图片。本教程将详细讲解如何在Android的TextView中解析并显示带图片的HTML数据。 首先,我们来看一下给定的代码...

    Android ListView卡片效果

    在Android中,我们可以使用多种方式来实现卡片效果,如使用自定义布局、第三方库如Android Design Support Library中的CardView,或者自定义ViewGroup。 在`CardListViewDemo`中,我们可以看到开发者是如何创建卡片...

    Android Studio实现QQ空间布置

    在实现QQ空间布局时,开发者会用到Android的布局XML文件,如`activity_main.xml`,在这里可以定义UI组件如TextView、ImageView、RecyclerView等,以呈现动态信息、好友列表或个人资料。`Fragment.iml`文件是Android ...

    Android加载HTML图文并排

    总结来说,Android加载HTML图文并排可以通过`TextView`配合`Html.fromHtml()`(或`HtmlCompat.fromHtml()`)以及图片加载库实现,或者直接使用`WebView`来呈现更复杂的网页内容。根据实际项目需求和性能考虑,可以...

    Textview 富文本简单示例

    当需要实现“富文本”效果时,`TextView`可以与`SpannableString`、`Spanned`或者`Html.fromHtml()`等工具一起工作,以呈现包括不同颜色、字体、链接、图片等多种格式的文本。本示例将探讨如何在`TextView`中应用富...

    09 Android-UI控件PPT与源码(1-33全)

    GridView呈现二维网格布局的视图,适用于图片库或菜单。"android_gridview"的源码可能涉及如何设置列宽、网格项点击事件以及动态加载数据等内容。 8. **ImageSwitcher**: ImageSwitcher是用于在两个ImageView...

Global site tag (gtag.js) - Google Analytics