在我们的项目中,常常会碰到图片与文字混排的问题。解决这类问题的方法有非常多,本文给出的方法不是唯一的。仅仅有依据实际场景才干找到更适合的方法。

本文主要通过xml布局来实现图片与文字的混排(水平排列)。

1.利用TextView实现图片与文字混排,

android:drawableBottom在text的下方输出一个drawable。如图片。

假设指定一个颜色的话会把text的背景设为该颜色。而且同一时候和background使用时覆盖后者。

android:drawableLeft在text的左边输出一个drawable,如图片。

android:drawablePadding设置text与drawable(图片)的间隔,

与drawableLeft、 drawableRight、drawableTop、drawableBottom一起使用,可设置为负数。单独使用没有效果。

android:drawableRight在text的右边输出一个drawable。

android:drawableTop在text的正上方输出一个drawable。

android:id="@+id/my_tv"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="在线"

android:textColor="#85898f"

android:layout_marginTop="5dp"

android:drawablePadding="5dp"

android:drawableLeft="@drawable/user_online"/>

当中, android:drawablePaddingh非常好的攻克了图片与文字的间距问题。

2.TextView动态的设置图片

Drawable drawable= context.getResources().getDrawable(R.drawable.text_img);

// 调用setCompoundDrawables时。必须调用Drawable.setBounds()方法,否则图片不显示

drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());

textView.setCompoundDrawables(drawable, null, null, null); //设置左图标

3.利用RelativeLayout(LinearLayout) 加入 TextView 和 ImageView(ButtonView)来实现

android:layout_width="wrap_content"

android:layout_height="wrap_content" >

android:id="@+id/my_iv"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="@drawable/user_online"

android:layout_alignParentLeft="true"

android:layout_centerVertical="true"

android:layout_marginLeft="5dp"

/>

android:id="@+id/my_tv"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_toRightOf="@id/my_iv"

android:layout_centerVertical="true"

android:layout_marginLeft="5dp"

/>

事实上也能够通过java代码来实现图片和文字的混排。

android自定义图片文本,Android 实现文字与图片的混排相关推荐

  1. Android自定义View之Paint绘制文字和线

    Android自定义View系列 Android自定义View注意事项 Android自定义View之图像的色彩处理 Android自定义View之Canvas Android自定义View之轻松实现 ...

  2. 创建富文本(文本可以包含文字,图片,自定义节点),c++,cocos2dx

    C++: 创建富文本(文本可以包含文字,图片,自定义节点) 这里测试富文本控件 ui::RichText* _richText = ui::RichText::create(); _richText- ...

  3. android 自定义输入法布局,Android自定义输入法使用方法

    Android自定义输入法使用方法 时间:2017-04-21     来源:Android开发学习网 对于Android用户而言,一般都会使用第三方的输入法.可是在输入密码时(尤其是支付相关的密码) ...

  4. android 自定义dialog样式,Android 自定义dialog类

    首先定制style样式 styles.xml 加入自定义样式 @null true true true @color/transparent @color/transparent true 0.6 在 ...

  5. android 自定义相册选择,Android图片选择器,支持拍照、从相册选择、裁剪、自定义主题...

    在很多项目中都会用到图片选择器,比如在选择头像的时候,还会要求选择图片进行裁剪后再进行上传:而有的项目要支持拍照后进行图片裁剪再进行上传.由于Android系统兼容性问题,我们不得不考虑自己实现图片裁 ...

  6. 两文本一图片android,Android富文本编辑器(二):图文混排以及图片上传处理

    对于一个富文本编辑器来说,图文混排是最基本的功能.而从上一篇文章中我们知道图文混排需要使用ImageSpan.下面这段代码摘自我的RichEditText源码: /** * 添加图片 * @param ...

  7. android 自定义圆形pop,Android布局自定义Shap圆形ImageView可以单独设置背景与图片...

    一.图片预览: 一.实现功能: 需求要实现布局中为圆形图片,图片背景与图标分开且合并到一个ImageView. 二.具体实现: XML中布局中定义ImageView,关健设置两个参数 Android: ...

  8. Android 自定义写字板控件实现用图片做橡皮擦实现擦除功能

    在最近的开发项目中,要实现自定义写字板实现签名和用图片做橡皮擦实现擦除功能,这就需要动态添加图片,然后拖动图片的同时,实现擦除的效果,具体步骤如下: 1.自定义写字板: import android. ...

  9. Android自定义View实现不断旋转的圆形图片

    自定义View是android开发的一个重要技能,用android提供的2/3D绘制相关类可以实现非常多炫酷的效果,需要实打实的编程基础.(吧). 但是自定义View又是我的弱项,所以最近都在摸索.练 ...

最新文章

  1. 七夕节,阿里云AI发女朋友了
  2. 影响网站快照异常的因素有哪些?
  3. python中str和int区别_Python中的string方法和str方法有什么区别?
  4. nginx.conf配置详解
  5. matlab ,python,c++关于格式化输出数字的表达
  6. tfpose与openpose区别_人体姿态识别--Openpose+Tensorflow
  7. POE供电交换机技术分析及工作过程详解
  8. wcf服务契约代理链
  9. [转]STL的内存分配器
  10. 固定字符结尾的正则_新手上路:图文解读助你理解和使用正则表达式
  11. 利用MO实现流场显示
  12. 扫描二维码后可以自动跳转到网页
  13. 《人工智能 一种现代方法》第三版 第1章 概述 笔记摘录
  14. Linux: 多线程
  15. 【实用软件】picasa不能导入文件夹至其中 的问题解决
  16. 多表连接查询与高级查询上(第三天)
  17. i3 8100安装服务器系统,i38100安装win7纯净版的图文教程
  18. html5 微信签到墙,3D签到墙 webgl示例源码(three.js)
  19. excel如何输入公式的技巧
  20. 修改xampp中的mysql的密码报错,ERROR 1348 (HY000): Column 'Password' is not updatable

热门文章

  1. UVA 10803 Thunder Mountain
  2. 改善ASP.NET2.0性能的五件法宝
  3. 产品工作中保持饥饿感,保持拒绝90%以上的伪需求你就不会错过下一个微信
  4. 【pmcaff】玩智能硬件的小伙伴,这些你用过么!
  5. 12月27日云栖精选夜读:实人认证 - 阿里云实人认证(公测)发布
  6. Linux 允许指定IP访问目录
  7. 详解“FTP文件传输服务”安装配置实例
  8. 用自定义的RoundImageView来实现圆形图片(可加边框)
  9. CentOS6.5安装Subversion
  10. Android开发之--Preferences的使用