iOS:交换Button中图片与文字的左右位置

时间:2021-07-09 10:04:37

titleEdgeInsets属性和 imageEdgeInsets属性只是在画这个button出来的时候用来调整image和label位置的属性,并不影响button本身的大小。
它们只是image和button相较于原来位置的偏移量。

如果要image在右边,label在左边,那image的左边相对于button的左边右移了labelWidth的距离,image的右边相对于label的左边右移了labelWidth的距离

获取button内的image和label的宽度

 CGFloat imageWidth = jumpBtn.imageView.bounds.size.width;
CGFloat labelWidth = jumpBtn.titleLabel.bounds.size.width;
jumpBtn.imageEdgeInsets = UIEdgeInsetsMake(, labelWidth, , -labelWidth);
jumpBtn.titleEdgeInsets = UIEdgeInsetsMake(, -imageWidth, , imageWidth);

同样的,label的右边相对于原button的右边左移了imageWith的距离,label的左边相对于image的右边左移了imageWith的距离

负值是因为这是contentInset,是偏移量,不是距离

 jumpBtn.imageEdgeInsets = UIEdgeInsetsMake(, labelWidth, , -labelWidth);
jumpBtn.titleEdgeInsets = UIEdgeInsetsMake(, -imageWidth, , imageWidth);

iOS:交换Button中图片与文字的左右位置的更多相关文章

  1. iOS 解决LaunchScreen中图片加载黑屏问题

    iOS 解决LaunchScreen中图片加载黑屏问题 原文: http://blog.csdn.net/chengkaizone/article/details/50478045 iOS 解决Lau ...

  2. iOS开发——UI高级OC篇&自定义控件之调整按钮中子控件(图片和文字)的位置

    自定义控件之调整按钮中子控件(图片和文字)的位置 其实还有一种是在storyBoard中实现的,只需要设置对应空间的左右间距: 这里实现前面两种自定义的方式 一:imageRectForContent ...

  3. 在线提取PDF中图片和文字

    无需下载软件,你就可以在线提取PDF中图片和文字,http://www.extractpdf.com/不仅可以获取本地PDF文档的图片和文字,还能获取远程PDF文档的图片和文字.如下图所示:结果本人测 ...

  4. iOS 获取相册中图片的名字 url

    __block NSString *imageFileName; NSURL *imageURL = [info valueForKey:UIImagePickerControllerReferenc ...

  5. iOS 设置button中图文位置

    方法一. -(CGRect)imageRectForContentRect:(CGRect)contentRect {    return CGRectMake(self.width - kImage ...

  6. button 左边图片右边文字样式

        状态值 : 正常 状态值 : 选中   #pragma mark - buttonPress- (void)buttonPress:(UIButton * )sender {     if ( ...

  7. iOS 设置Label中特定的文字大小和颜色

    直接上代码: _price = @"27"; NSMutableAttributedString *attributedString = [[NSMutableAttributed ...

  8. html 中 图片和文字一行 垂直居中对齐

    效果:      代码:<div><img src='img/point_icon.png' width='35px' height='35px' style='float: lef ...

  9. Winform DataGridView列的单元格中动态添加图片和文字

    先上图在说,第二列中图片和文字的样式 1.需要重写DataGridViewTextBoxColumn,新建类TextAndImageColumn.cs using System; using Syst ...

随机推荐

  1. iOS - 如何切图适配各种机型

    关于iPhone6/6+适配问题一直有争议,今天小编专门为大家整理了相关的有效方案,希望对大伙儿有帮助! 移动app开发中多种设备尺寸适配问题,过去只属于Android阵营的头疼事儿,只是很多设计师选 ...

  2. HDU 5497 Inversion

    Time Limit: 3000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Description You have ...

  3. MyEclipse内存溢出问题解决方法

    tomcat从1.7换到1.6,一直报这个错:java.lang.reflect.InvocationTargetException 解决方法: 加入: -server -Xms512m -Xmx20 ...

  4. Spring源码学习之:spring注解&commat;Transactional

    在分析深入分析@Transactional的使用之前,我们先回顾一下事务的一些基本内容. 事务的基本概念 先来回顾一下事务的基本概念和特性.数据库事务(Database Transaction) ,是 ...

  5. qt超强绘图控件qwt - 安装及配置

    qwt是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式 ...

  6. &lbrack;C语言 - 4&rsqb; 指针

    存放变量地址的变量 int a = 1; int *p; p = &a;   在64位系统中,占用8个字节 直接引用 间接引用 *p : 指针指向的变量的值 不要使用未初始化的指针     1 ...

  7. HTTP协议返回代码含义

    1XX 代码这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx 响应 100 – 继续101 – 切换协议2XX 代码这类状态代码表明服务器成功地接受了客户端请求,一般日 ...

  8. sklearn CART决策树分类

    sklearn CART决策树分类 决策树是一种常用的机器学习方法,可以用于分类和回归.同时,决策树的训练结果非常容易理解,而且对于数据预处理的要求也不是很高. 理论部分 比较经典的决策树是ID3.C ...

  9. JobService相关

    1.在构建JobInfo时,如果设置setPersisted(true),则需要应用申请RECEIVE_BOOT_COMPLETED权限. 这个权限只需要在应用首次安装时被授予,后面覆盖安装时便会默认 ...

  10. Python带&lowbar;的变量或函数命名

    python中的标识符可以包含数字.字母和_,但必须以字母或者_开头,其中以_开头的命名一般具有特殊的意义. 前后均带有双下划线__的命名 一般用于特殊方法的命名,用来实现对象的一些行为或者功能,比如 ...