首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在添加图片到按钮时禁用UIButton右移的标题?

在添加图片到按钮时禁用UIButton右移的标题,可以通过设置UIButton的contentHorizontalAlignment属性来实现。默认情况下,UIButton的contentHorizontalAlignment属性是居中对齐的,当设置按钮的imageEdgeInsets后,标题会自动右移以保持居中对齐,从而导致按钮标题位置的变化。

要禁用按钮标题的右移,可以将contentHorizontalAlignment属性设置为左对齐。具体步骤如下:

  1. 获取按钮原本的标题文字,保存起来。
  2. 设置按钮的图片和图片偏移量,通过调整imageEdgeInsets属性来添加图片到按钮。
  3. 设置按钮的标题为之前保存的标题文字。
  4. 设置按钮的contentHorizontalAlignment属性为左对齐。

示例代码如下:

代码语言:txt
复制
let originalTitle = button.titleLabel?.text // 获取按钮原本的标题文字
button.setImage(image, for: .normal) // 设置按钮的图片
button.imageEdgeInsets = UIEdgeInsets(top: 0, left: -10, bottom: 0, right: 0) // 设置图片偏移量,根据实际情况调整
button.setTitle(originalTitle, for: .normal) // 设置按钮的标题为原本的标题文字
button.contentHorizontalAlignment = .left // 设置按钮的内容水平对齐方式为左对齐

这样,按钮的图片将会添加到按钮的最左侧,而标题将会保持不动,实现禁用按钮标题右移的效果。

推荐腾讯云的相关产品和产品介绍链接地址:

  • 腾讯云移动推送服务:https://cloud.tencent.com/product/umeng
  • 腾讯云对象存储 COS:https://cloud.tencent.com/product/cos
  • 腾讯云云开发:https://cloud.tencent.com/product/tcb
  • 腾讯云人脸识别服务:https://cloud.tencent.com/product/face-recognition
  • 腾讯云音视频处理:https://cloud.tencent.com/product/mps
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

IOS UIButton使用详解

第一、UIButton定义     UIButton *button=[[UIButton buttonWithType:(UIButtonType); 能够定义button类型有以下6种,  typedef...= [UIColor clearColor]; [button setBackgroundColor:[UIColor blueColor]]; 第四、state状态  forState: 这个参数作用是定义按钮文字或图片在何种状态下才会显现...UIControlStateNormal = 0, 常规状态显现   UIControlStateHighlighted = 1 << 0, 高亮状态显现   UIControlStateDisabled = 1 << 1, 禁用状态才会显现...UIControlEventTouchUpInside]; [btn removeTarget:nil action:nil forControlEvents:UIControlEventTouchUpInside]; 第九、 设置按钮内部图片间距和标题间距... UIEdgeInsets insets; // 设置按钮内部图片间距  insets.top = insets.bottom = insets.right = insets.left = 10;

79700

iOS-UIButton 全面解析UIButton 全面解析

UIButton 全面解析 建议收藏,用到时候来这里一查就都明白了 //初始化Button 不用alloca init 方法 用便利构造器初始化 UIButton *button = [UIButton...@property(nonatomic) BOOL reversesTitleShadowWhenHighlighted; 标题阴影改变按钮是否高亮显示。...默认是YES @property(nonatomic) BOOL adjustsImageWhenDisabled; 按钮禁用情况下,图像颜色是否要加深一点。...(6_0); /* forState: 这个参数作用是定义按钮文字或图片在何种状态下才会显现*/ 以下是几种状态 enum { UIControlStateNormal = 0, 常规状态显现..., nonatomic,readonly,strong) UIImage *currentImage; 获取按钮当前标题背景图片 @property(nullable, nonatomic,readonly

1.7K80
  • UIButton使用方法汇总

    //按钮初始化类方法 UIButton *button1 = [UIButton buttonWithType:UIButtonTypeRoundedRect];//这里创建一个圆角矩形按钮 //按钮初始化实例方法...setBackgroundColor:[UIColor redColor]]; button1.backgroundColor=[UIColor redColor]; //设置button填充图片...//[button1 setImage:[UIImage imageNamed:@"btng.png"] forState:UIControlStateNormal]; //设置button标题....adjustsImageWhenHighlighted = NO; //跟上面的情况一样,默认情况下,当按钮禁用时候,图像会被画得深一点,设置NO可以取消设置 button1.adjustsImageWhenDisabled...有:表示调用有参数doSome 没:  则表示调用没参数 同理action:@selector(doSome:asd:) 调用- doSome: xx asd:xx; //取消按钮已经添加所有事件

    1.2K50

    iOS 9人机界面指南(四):UI元素(下)- 腾讯ISUX

    API注释 想要了解如何在代码中定义添加联系人按钮,请参考UIButton....API注释 想要了解如何在代码中定义信息按钮,可以参考UIButton. iOS包含了两种信息按钮样式:适用于浅色内容上深色按钮,以及适用于深色内容上浅色按钮。...想要了解更多如何在代码中定义系统按钮,可以参考 UIButton....系统按钮: 默认状态下不含边界,也不含背景图 可以是图标或者文字标题 支持自定义样式,描边或者加背景图(想要自定义按钮外观,可以使用 UIButtonTypeCustom 类型按钮,并且提供背景图片...设计文案可以遵循以下指南: 跟其它所有按钮一样,使用标题式大写,而且不需要标点符号 尽可能使用与警告文案直接相关动词或动词词组,”取消(Cancel)”,”查看全部(View All)”,”回复

    13.2K30

    iOS UIButton解读

    UIButton控件是应用界面中常用一个控件,用法总结: 一、初始化 UIButton初始化一般使用其类方法,+ (id)buttonWithType:(UIButtonType)buttonType...; //设置图片绘制是否高亮变暗    @property(nonatomic)BOOL  adjustsImageWhenDisabled; //设置图片是否轻绘制当按钮禁用时 @property...*tintColor NS_AVAILABLE_IOS(5_0);  //这个属性会作用于标题图片,但是如果你是自定义风格按钮,这个属性将不起任何作用,它只作用于系统 @property(nonatomic...;  //设置标题阴影颜色及显示状态 - (void)setImage:(UIImage *)image forState:(UIControlState)state;  //设置按钮图片和显示当前图片状态...注意:按钮图片设置和背景图片不同在于:         1、设置图片,如果有标题会和标题并列显示         2、设置背景图片会出现在标题下面         3、图片偏移量可以设置,背景图片不可以

    59720

    记录下UIButton图文妙用和子控件优先显示

    UIButton用处特别多,这里只记录下把按钮应用在图文显示场景,和需要把图片作为按钮背景图片显示场景; 另外记录下在父控件子控件优先显示方法(控件置于最前面和置于最后面)。...1、当在某个地方既需要显示图片,还需要显示文字,另外还要有点击功能时候,这时按钮是个很好选择。   按钮图片和文字距离可以自由调整,图片也可以上下左右翻转。...但是有时候,产品要求显示按钮左右必须是圆形,这时候虽然可以让ui切个适配图片做背景,其实针对如果是背景图片是纯色的话,我们可以利用 控件layer.masksToBounds, 和layer.cornerRadius...下面写了五个橙色背景按钮作比较:背景图片按钮尺寸匹配、背景图片按钮尺寸或偏大或偏小、处理背景图片让背景图片自适应按钮、不用背景图片使用图层来设置按钮左右圆形: /** 测试给按钮设置背景图片...[self addMoveImgAndTextButton]; //添加图文并茂按钮,测试按钮图文移动 [self addBackgroundImgButton]; //添加设置背景图片按钮

    1.7K30

    Swift-MVVM 简单演练(三)

    这里主要学习是如果突然增加需求,我们如何在合适位置处理问题。...比如,一开始没有登录时候,运行程序,会出现登录和注册按钮。当我们点击登录按钮时候,我们期望立刻弹出登录控制器。 但是我们刚才写代码,真的有影响这里了。...这里不去做那么复杂,只是表达一下,更改导航栏标题显示样式和Button文字图片左右对调,之前我也写过Objective-C相关方法iOS-自定义 UIButton-文字在左、图片在右(一)、iOS-...自定义 UIButton-文字在左、图片在右(二) 将导航栏标题设置成自定义Button 这个没什么技术含量,直接上代码了。...虽然我心里也一直纳闷,为什么会是一半距离!就在我百思不得其解时候,我不小心点击了一下按钮。结果又是令我非常意外 仔细看,箭头图片在文字中央位置,再多次点击的话,都是在这个位置切换图片

    2.5K30

    iOS学习—— UINavigationController返回按钮与侧滑返回手势研究

    而在这个模块上,我们有某个或某些viewController需要禁用侧滑手势(一般需要禁用侧滑手势是因为返回或退出当前viewController需要double confirm,在一些填表页面比较常见... 中添加按钮,然后添加按钮点击功能即可。...,如果你上一级设置backBarButtonItem标题过长(没有设置则默认是上一级标题),那么系统可能会自动用“Back/返回”来代替返回按钮标题。...UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom]; //对按钮个性化设定 UIBarButtonItem *barItem...self.navigationItem.leftBarButtonItem = barItem; //侧滑手势失效 self.navigationItem.backBarButtonItem = barItem; //不影响侧滑手势 backBarButtonItem自定义不能影响返回按钮标题图片

    6.7K60

    【 iOS 应用开发 】 UIKit 控件 ( UIView 属性 | storyboard 设置 | 模拟器 | 拖线关联 | tag | 软键盘操作 | 颜色值 | 代码生成控件 | 动画设置 )

    , 然后点击按下状态, 大按钮显示另外一个背景图片; 3.上下左右按钮 : 点击四个按钮, 大按钮进行上下左右移动; 4.放大缩小按钮 : 点击放大, 大按钮放大, 点击缩小, 大按钮缩小; -...: 为按钮 Default 和 Highlighted 两个状态设置不同图片 ; 3.绑定方法 : 将两个按钮同时绑定同一个方法上 ; 4.设置 tag : 给 两个按钮分别设置 tag...控件, 修改标题为 “修改随机颜色” 从控件 UIViewController.m 中拖线, 点击方传入 Sender , 参数如下设置; 生成方法为 - (IBAction)changeRandomColor...按钮, 创建按钮需要制定按钮 Type 类型, 一般情况下使用 Custom 类型, 并设置图片 frame 属性 UIButton * button = [UIButton buttonWithType...- (IBAction)generateButton:(UIButton *)sender { //1.创建 UIButton 按钮, 创建按钮需要制定按钮 Type 类型, 一般情况下使用

    4.9K30

    1.注册或登录页面设计:UILabel,UIButton,UITextField

    81 [confirmButton setTitle:@"确定" forState:UIControlStateHighlighted]; //高亮显示button标题 82...= NO; /*跟上面的情况一样,默认情况下,当按钮禁用时候,图像会被画得深一点,设置NO可以取消设置*/ button1.adjustsImageWhenDisabled.../* 给button添加事件,事件有很多种,我会单独开一篇博文介绍它们,下面这个时间意思是 按下按钮,并且手指离开屏幕时候触发这个事件,跟web中click事件一样...[confirmButton setTitle:@"确定" forState:UIControlStateHighlighted]; //高亮显示button标题 confirmButton.backgroundColor...这里是将method方法指定给新建这个confirmButton [self.view addSubview:confirmButton]; 若要设置UIButton背景图片时:

    2.3K50

    【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)

    , 显示简短说明信息, 效果如下 :  -- Add Contact : 显示 + 按钮, 常用于添加内容, 效果如图 :  (2) State Config 属性 UIButton 状态 : 每种状态都可以设置不同...文本, 图片, 格式; -- Default : 默认状态; -- Highlighted : 用户碰触高亮状态; -- Selected : 被选中状态; -- Disabled : 禁用状态...; 为不同状态 UIButton 设置样式 :  -- "setTittle : forState :" 方法 : UIButton 不同状态 设置不同标题; -- "setTittleColor...: forState :" 方法 : UIButton 不同状态设置不同标题颜色; -- "setTittleShadowColor : forState :" 方法 : UIButton 不同状态...; (10) Edge 属性 Edge 属性 : 控制按钮边界; -- Content : 按钮内容作为按钮边界; -- Tittle : 按钮标题文本作为边界; -- Image : 按钮图片作为按钮边界

    6.7K20

    【 iOS 应用开发 】 UIKit 控件 ( 代码生成控件 | UIView 属性方法 | Storyboard | Bundle | Property List | 动画 | 图片内存优化 )

    ) 代码生成 按钮 : 1.创建按钮控件 : 创建 UIButton 控件 , 需要制定按钮类型 , 这里创建 Custom 类型控件 ; //1....) UIButton 启用 禁用 ( ① enabled 属性 YES NO ) UIButton 启用 禁用 : 1.enabled 属性 ( 可视化修改 ) : 在 UIButton 属性查看器中...YES NO 值 来 设置 可用 禁用 属性 ; 显示第一张图片时 , 左 按钮 禁用 , 显示 最后一张图片时 , 右 按钮 禁用 ; 其它情况 左右按钮 都可用 ; // 1....设置按钮 禁用 启用 , index 为 1 和 5 分别启用 和 禁用 指定按钮 , 其它情况下可以使用两个按钮 if(self.index == 1){ self.lastButton.enabled...设置按钮 禁用 启用 , index 为 1 和 5 分别启用 和 禁用 指定按钮 , 其它情况下可以使用两个按钮 if(self.index == 1){ self.lastButton.enabled

    3.8K40

    iOS调整导航条BarButtonItem与titleView 间距

    不能直接是UIButton, 因此解决方案只要对UIButton进行包装一层之后再作为CustomView I、调整BarButtonItem按钮和titleView间距 与屏幕边界 或者与titleView...相当于btn向右移动width数值个像素,由于按钮本身和边界间距为5pix,所以width设为-5,间距正好调整 * 为0;width为正数,正好相反,相当于往左移动width数值个像素...相当于btn向右移动width数值个像素,由于按钮本身和边界间距为5pix,所以width设为-5,间距正好调整 * 为0;width为正数,正好相反,相当于往左移动width数值个像素...相当于btn向右移动width数值个像素,由于按钮本身和边界间距为5pix,所以width设为-5,间距正好调整 * 为0;width为正数,正好相反,相当于往左移动width数值个像素..., 因此解决方案只要对UIButton进行包装一层即可 - (void)setupNavigationBar { // 设置导航条右侧按钮 UIButton *btn = [[UIButton

    2.1K20

    自定义UITabBar--实现类似新浪微博中间发送按钮

    中调整各个tabBarButton位置,并添加一个按钮作为tabBar上发送按钮...- (UIButton *)plushBtn{ if (_plushBtn == nil) { UIButton * plustBtn = [UIButton buttonWithType:...if ([tabBarButton isKindOfClass:NSClassFromString(@"UITabBarButton")]) { if (i == 2) {   // 如果是第三个按钮右移一个位置...我可以在tabBarController上添加五个(以微博为例)子控制器(正好tabBar上tabBarButton位置不用调整了),然后在中间位置上添加一个自己定义按钮作为发送按钮。...这个发送按钮添加时间很关键,如果是在viewDidLoad中添加就会被系统tabBatButton所覆盖,无法进行点击,可如果在viewDidAppear方法中添加自定义发送按钮则可覆盖系统tabBarButton

    62520

    MNKit - 业务开发中简化属性设置工具类

    常见创建方式,设置按钮标题、字体大小、颜色、背景色、点击事件、添加到父控件等等,基本上每个属性都是要通过[ ] 设置,最麻烦是经常要通过forState:UIControlStateXXX设置状态...MNButton简化上述代码: //一句代码设置 - 按钮标题 && 颜色 && 字号 && 父试图 && 响应方法 MNButton *sendBtn = [MNButton buttonWithTitle...这一行代码即可创建拥有上面代码所需要按钮基本属性 UIButton 除了有文字标题展示样式之外,也有用image 或者 backgroundImage展示情况 //一句代码设置 - 按钮背景图片...设置图片是设置BackgroundImage让他铺满整个button,所以这里方法传入属性是BackgroundImage ---- MNLabel 业务开发中,UIButton控件如果登场率如果不能排在第一...,我会再继续抽出来,添加到此工具类中,所以如果觉得MNKit对你有用,能提升你工作效率欢迎star~ 后期会继续补充~

    1.6K80

    《iOS Human Interface Guidelines》——System Button系统按钮

    查看UIButton学习更多关于在你代码中定义一个系统按钮内容。...一个系统按钮: 默认没有边框或者背景外观 可以包含一个图片或者文本标题 支持自定义外观,比如边框或者背景图片(使用UIButtonTypeCustom类型按钮并提供一个自定义背景图来添加自定义外观...当你给一个系统按钮提供标题,遵循下面的方法: 使用一个动词或者动词短语来描述按钮执行动作。一个对应动作标题告诉用户按钮是可交互以及点击时会发生什么。 使用标题风格大写。...除了文章、并列连词和少于四个字母介词以外每个单词都要大写。 不要创建太长标题。太长文本会被截断,这会让用户很难理解。 合适的话,在内容区域给系统按钮添加边框和背景外观。...大部分情况下,你可以不用给按钮添加外观,只需要制作一个清晰唤起动作标题,定义颜色,并提供语境线索。然而在一些内容区域中,添加边框和背景外观来提升按钮关注度会比较合适。

    65120

    iOS_自定义UITabBarController标签视图控制器

    ,即点击状态): @interface MyTabBarController () //之前选中按钮 @property(nonatomic, retain) UIButton *selectedBtn...(2)然后定义了4个按钮和4个label,即标签和标签下标题 (3)然后循环给4个按钮添加点击事件,触发事件是同一个clickBtn - (void)viewDidLoad { [super...:) forControlEvents:UIControlEventTouchUpInside]; } } (4)然后实现按钮点击事件clickBtn:实现按钮和其下面标题 选择和未选择状态切换...;也需要实现视图跳转: #pragma mark -- 自定义tabBar按钮点击事件 -(void)clickBtn:(UIButton *)sender { //设置上一个按钮...self.selectedIndex = sender.tag - 1; } 然后就基本实现了一个视图控制器功能了,自己还有什么需求可以往里加,使用就跟视图标签视图一样使用就行,只是这里按钮图片我都是在类里就赋值好了

    55630

    UIBarButtonItem我用了这些姿势才能和你交互

    因为我们这个界面只有一个元素,我们就逻辑就没做复杂判断了。 我们在输入框文字进行改变时候,动态获取发现是可以。当我在 ViewDidLoad方法直接调用这个方法竟然这个按钮还没有添加。...如果我们自定义按钮,自然是没有什么难度,但是考虑要自己设置按钮颜色。如果之后全部更改颜色,这个地方就要改动,万一忘记改动就会出现问题。 所以觉得还是用系统,之后禁用系统交互。...这是系统内部数组,我们不清楚系统怎么添加,简单拦截 NSArray添加元素方法或者重写或者会出现其他问题。...= isAllowOperation; } } } 这样我们在页面出现时候,就已经禁用了 Done按钮。...突然想起来,没有任何一个编辑界面让用户进来就可以提交,都是用户改变了输入框内容之后才可以进行提交。 这样我们在进入这个页面直接禁用 Done也是可以

    89150

    UIButton实现各种图文结合效果以及原理

    前面说几个方法看起来有效,也确实会解决问题,但缺点是代码量会增加,而且必须同时管理UIButton, UIImageView, UILabel这三个整体,如果哪天产品还希望有一个按钮按下高亮或者按下阴影效果...图片在左,文字在右,整体居中,设置间距 这种方式是按钮默认图文布局方式,因为要调整图片和文本间距,所以只需要文本右移padding/2而图片左移padding/2值就可以了。..., 两者相减就是水平需要偏移值,又因为默认情况下当按钮比较小时会自动保留图片尺寸和将文字部分缩小,因为当我们实现文字和图片上下布局,需要将文字区域扩展整个按钮部分,否则将会缩小按钮文字宽度...,我想应该可以满足您需求了,如果这些图文结合样式还是无法满足您需求则您还是别用UIButton了。...padding是调整布局整个按钮和图文间隔。

    2.9K10

    iOS视图滚动时候控制导航条标题及公告视图alpha(显示与隐藏)

    I 视图滚动时候控制导航条标题及公告视图alpha 应用场景:导航条标题放到视图中,例如下图 ?..., kStatusBarHeight - 44, kWidth, 44); navLab.backgroundColor = [UIColor clearColor]; // 1.2 添加导航条标题视图...}]; } return _noteViw; } 1.2 滚动时候控制导航条标题和公告视图...图片颜色 应用场景:比如设计给我们是一张黑色返回箭头图.我们某个页面需要弄成白色的话.又不想重新设计一下新图片 解决方法:修改tintColor 如果按钮是UIButtonTypeSystem类型...vc.navigationItem.leftBarButtonItem.tintColor = [UIColor whiteColor]; 但是修改自定义按钮tintColor,需要设置图片渲染模式为

    1.6K30
    领券