EditText加入图片混编显示
来源:互联网 发布:csgo游戏优化 编辑:程序博客网 时间:2024/06/04 17:40
我们一般通过EditText的setText方法来设置EditText中的文本,例如如下的代码向EditText添加了一个字符串。
EditText edittext = (EditText)findByView(R.id.edittext);Edittext.setText(“测试数据”);
我们只需要对上面的代码稍微做一下手脚,就可以实现将图像插入到EditText中的目的。如果读者看过《Android/OPhone开发完全讲义》,会发现书中在很多情况下使用了文本标记(类似于HTML语言的标签,但只包含了十分有限的HTML语言的功能)。在这些标记中有一个<img>标记。通过这个标记,可以很容易地实现将图像插入到EditText的功能。不过使用<img>标签要比使用其他的标签多一个步骤,这就是要实现一个ImageGetter接口,通过这个接口,可以获得一个Drawable对象。先看看如下的代码:
ImageGetter imageGetter = new ImageGetter() {@Overridepublic Drawable getDrawable(String source) {int id = Integer.parseInt(source);Drawable d = getResources().getDrawable(id);d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());return d;}};
上面的代码通过ImageGetter接口的getDrawable方法返回了一个Drawable对象,其中source参数的值就是<img>标签的src属性的值。我们需要通过如下的代码来使用<img>标签。
editText.append(Html.fromHtml("<imgsrc='"
+ faces[new Random().nextInt(6)] +"'/>", imageGetter, null));
editText.append(Html.fromHtml("<img src=\""+ faces[new Random().nextInt(11)] +"\"/>", imageGetter, null));
其中faces是一个int类型数组,保存了相应的drawable资源的ID值。在使用<img>标签之前需要使用Html.fromHtml方法来封装这些标签,如果使用的是<img>标签,需要使用fromHtml方法的第2个参数指定ImageGetter对象,以便通过<img>标签的src属性获得相应的Drawable对象。通过EditText.append方法插入<img>标签后,系统会自动将<img>标签转换成相应的图像显示在EditText中。下面来看看我们的成果(如图4所示)。
参考:http://blog.csdn.net/zhjp4295216/article/details/5824997
http://blog.csdn.net/fancylovejava/article/details/17930013
- EditText加入图片混编显示
- EditText加入图片混编显示
- EditText加入图片混编显示
- Android EditText加入图片混编显示
- Android EditText加入图片混编显示
- 图文混编效果之TextView、EditText中显示图片
- EditText 在左边加入图片
- EditText显示图片
- EditText显示图片
- EditText中显示图片
- EditText显示图片,删除图片,点击图片
- EditText添加图片和显示图片
- android EditText 控件中加入图片(非背景图片)
- android TextView和EditText中显示图片
- android TextView和EditText中显示图片
- android TextView和EditText中显示图片
- TextView和EditText中显示图片
- android TextView和EditText中显示图片
- mysql 计算一个时间距离当前天数
- Palindrome Number
- 【网络安全】SSLSplit源码流程分析-中间人攻击
- 设计模式之单例模式
- 智能家居控制器电源解决方案探讨_金升阳模块电源
- EditText加入图片混编显示
- 数据挖掘之聚类篇
- .net Lock(this),Lock(obj),Lock("string") console app demo,线程安全
- 随笔分类 - NoSql
- 华为-翻译电话号码
- 澳洲联储中午将首先打响本周五国利率决议第一枪
- 动词的使役
- UVA - 10296 Jogging Trails (中国邮路问题)
- 在vs中导入项目