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

在不更改位置的情况下在自定义UIButton中更改UILabel标题

,可以通过以下步骤实现:

  1. 创建一个自定义的UIButton对象,并设置其frame、背景颜色、边框等属性。
  2. 在UIButton对象上添加一个UILabel子视图,并设置其frame、文本内容、字体、颜色等属性。
  3. 在需要更改UILabel标题的时候,通过UIButton的subviews属性获取到UILabel对象,并直接修改其text属性即可。

以下是一个示例代码:

代码语言:txt
复制
// 创建自定义UIButton对象
let customButton = UIButton(frame: CGRect(x: 0, y: 0, width: 200, height: 50))
customButton.backgroundColor = UIColor.blue
customButton.layer.cornerRadius = 10
customButton.layer.borderWidth = 1
customButton.layer.borderColor = UIColor.black.cgColor

// 创建UILabel子视图
let label = UILabel(frame: customButton.bounds)
label.text = "原始标题"
label.font = UIFont.systemFont(ofSize: 16)
label.textColor = UIColor.white
label.textAlignment = .center

// 将UILabel添加到UIButton上
customButton.addSubview(label)

// 在需要更改标题的时候,获取到UILabel对象并修改其text属性
if let label = customButton.subviews.first as? UILabel {
    label.text = "新标题"
}

这样,通过获取UIButton的子视图并修改UILabel的text属性,就可以在不更改位置的情况下更改自定义UIButton中的UILabel标题。

推荐的腾讯云相关产品:腾讯云移动推送(https://cloud.tencent.com/product/umeng_push)可以用于在移动应用中实现消息推送功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

学习iOS开发已经有一段时日了,之前一直没有系统对iOS开发相关知识进行归纳总结,导致很多知识点云里雾里脑子里形不成iOS开发思想,现将自己在学习过程遇到一些知识进行总结,希望能对iOS初学者能有一定帮助...作为iOS开发入门总结第一篇,这里以最常见注册或登陆页面设计作为开篇,这里主要会用到UILabelUIButton,UITextField这三个控件。...一.注册或登录界面 如下图,实现了一个注册或登录界面,这里先只介绍单个页面,介绍点击“完成”按钮后动作,之后系列《iOS开发入门总结》中会逐步介绍,等基础知识介绍差不多了,就可以以一个完整注册系统作为小结...UILabel *label1 = [[UILabel alloc]initWithFrame:CGRectMake(50.0, 20.0, 200.0, 50.0)]; //设置Label位置和大小...触发了这个事件以后,执行butClick:这个方法,addTarget:self 意思是说,这个方法本类 也可以传入其他类指针*/ [button1

2.3K50

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

首先创建一个类,继承自UItabBarController 然后.m文件: 这里我有两个宏定义: #define WIDTH (myView.frame.size.width / 4) //我写...; @end 然后开始写自己想要东西了,viewDidLoad: (1)删除继承父类而来tabBar,自定义自己想要视图,其frame为原来tabBarframe。...:) forControlEvents:UIControlEventTouchUpInside]; } } (4)然后实现按钮点击事件clickBtn:实现按钮和其下面标题 选择和未选择状态切换...;也需要实现视图跳转: #pragma mark -- 自定义tabBar按钮点击事件 -(void)clickBtn:(UIButton *)sender { //设置上一个按钮...; 这是我自定义tabBarController下载地址,需要可以下下来参考参考: http://download.csdn.net/detail/margaret_mo/9451753

54330

《Motion Design for iOS》(十五)

从UIKit和CoreAnimation开始 通常情况下,iOS app屏幕上物体都是UIView对象。它们是矩形并且有坐标和大小来定义它们屏幕上位置和尺寸。...这些是为某些功能或特性特定特殊UIView对象。包括作为界面按钮UIButton、用来显示图片UIImageView、显示文本UILabel和显示列表UITableView。...你也可以通过绘制任何你想要东西来完全自定义UIView。 这是我app Interesting for iPhone截屏和界面中一些视图分解。...运营商图像视图(苹果控制) wifi信号强度视图(苹果控制) 当前时间视图(苹果控制) 电池等级视图(苹果控制) “汉堡包”菜单按钮 标题标题标签 改变子板按钮 一个UITableViewCell...视图,用来包含UITableView中一行元素 UILabel帖子标题 评论数量UIButton,由一个评论气泡图和评论数量组成 显示帖子URLUILable UILabel显示帖子点值和子板

84740

iOS UI控件了解一下

iOS开发及测试,除了业务逻辑和算法之外,UI控件是最重要一部分,因此熟悉UI控件及实现原理,对于了解开发实现和测试是相当必要,这篇文章将给大家介绍常用UI控件及实现。...下面详细介绍几种最常用控件及属性: 1. UILabel 1)UILabel是什么? (1)UILabel(标签):是显示文本控件,AppUILabel是出现频率最高控件。...(1)UIButton(按钮):是响应用户点击控件。AppUIButton是出现频率很高控件; (2)UIButtonUILabel、UITextField侧重点不同,侧重于处理点按。...注:UIButton : UIControl : UIView(详见下表) ? 5)外观控制: UIButton提供了外观控制API。包括标题、背景图⽚片、前景图⽚片等(详见下表) ?...(按钮)属性及其使用,其他控件使用都是类似的,了解了各种UI控件属性及开发使用之后,就可以测试用例设计及UI相关测试,更精准地设计测试用例,针对每一类UI控件根据其属性设计特定测试方法。

2.6K20

IOS 开发文档

,控制器只做UI初始化 刷新UI 响应用户事件 跳转逻辑判断等和业务无关操作,所有业务处理放到ViewModel处理 View:自定义视图文件夹 在此文件夹存放该模块相关视图,比如自定义cell...通用类,存储项目移植过程不需要更改就能直接使用类 9:Resource文件夹 资源文件夹,用来存放和项目有关资源,比如图片资源,文件资源等 10:Base文件夹 基类,存储项目中需要用到基类...NSDictionary*_selectedCellDic;} 如果是全局属性并且.h文件,使用文档注释表明属性作用,(要注意空格 比如@property(nonatomic, strong)UILabel...,strong)UIButton*checkBtn;/** * 我已阅读并同意 */@property(nonatomic,strong)UILabel*readLabel; 如果在.m文件,使用...,strong)UIButton*checkBtn;`// 我已阅读并同意@property(nonatomic,strong)UILabel*readLabel; 如果是局部变量,根据情况判断是否要加注释

1.4K40

iOS地图找房(类似链家、安居客等地图找房)

题外话:百度搜索键入:iOS地图找房。你会发现搜索到很多关于这方面的帖子,但是几乎都是询问如何实现,找不到一个可以研究借鉴博客。于是我决定补上这个空缺,写可能不全面,大家体谅。...当点击这个圆形,可以进去小区房源,这个房源是一个消息框形式标识,当比例尺大区,地图移动时候应该是不允许更新房源,当小区时候,需要更新,而且我们猜测这个更新不能太频繁,可能我们需要设定一个移动距离...点击大小区不同响应。 文末我会放上效果GIF。 首先,创建地图,设置比例尺,定位个人位置。比例尺设定说明下,我这里给了一个自己定义范围,因为我希望用户无限放大地图或者无限缩小。...你可以理解为这就是一个大头针,只不过是换了图片而已,那么如何定义自己想要样式呢? 首先定义一个圆形大头针,可能需要主标题和副标题 ?...如果这样可能会程序crash。点击小区我弹出一个房源列表,点击大区,我先移动地图中心点到点击位置,再把地图放大。注意这个顺序,而且必须不能使用动画。

1.5K60

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

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

1.6K30

Swift-MVVM 简单演练(三)

我们可以更改它显示最小时间(setMinimumDismissTimeInterval) 像这种全局都能用到东西,我们最好是设置一个方便管理地方,这里以AppDelegate设置 extension...completion(true) } 和之前对比一下,应该会看更清楚 ---- 更改导航栏标题显示样式 之前微博版本和现在多少有点区别,首页导航栏标题位置仅仅是显示自己昵称...这里不去做那么复杂,只是表达一下,更改导航栏标题显示样式和Button文字图片左右对调,之前我也写过Objective-C相关方法iOS-自定义 UIButton-文字左、图片在右(一)、iOS-...自定义 UIButton-文字左、图片在右(二) 将导航栏标题设置成自定义Button 这个没什么技术含量,直接上代码了。...因为要设置图像和文字,并且颠倒其位置这些代码,应该封装起来。只留给使用者(包括我们自己)一个快速创建此按钮方法就可以了。 我选择ButtonExtension搞定这个。

2.5K30

Swift:静态工厂方法

无论是我们要根据APP品牌设置样式视图(View),还是要配置视图控制器(View Controller),亦或是测试创建存根值时,我们经常发现需要将设置代码放在某个地方。...同样,这是许多开发人员选择子类化并创建内置视图类自定义变体地方,就像这里UILabel一样,我们将使用它来渲染标题: class TitleLabel: UILabel { override...尽管子类化是一项重要语言功能,即使面向协议编程时代,也很容易将自定义设置与自定义行为混淆。我们并没有在上面的UILabel真正添加任何新行为,我们只是设置一个实例。...(暂时), //以免将此功能添加到我们应用程序全局使用UIButton。...我们甚至可以静态属性或函数设置内部“自动布局”约束。

2.3K10

猫学习IOS(五岁以下儿童)UI之360其他下载管理器广场UI

没有通过双层for循环换行,而是通过第几个然后推断他行和列 来定位他xy坐标完毕 012 第一行:相当于i/kColCount //行 一行:012 二行:345 三行:678 int row...表示不同意改动titleLabel指针,可是能够改动label字体 // 提示:按钮字体是区分状态!...思路 思路:将三个控件放到一个view 没有通过双层for循环换行,而是通过第几个然后推断他行和列 来定位他xy坐标完毕 012 第一行:相当于i/kColCount //行 一行:...;UIButton字体设置 //设置标题 label.text = dict[@"name"]; //设置字体大小 label.font...可是能够改动label字体 // 提示:按钮字体是区分状态

18640

设计模式之创建型模式

《设计模式》一书标题是“可复用面向对象软件基础”,所以显然这23个设计模式是用于面向对象软件设计,而众所周知,最适合面向对象这种范式领域其实是 GUI 编程领域(这也是《设计模式》中大部分应用实例都是一些...而且不止是显示文字,连同背景色、位置、大小等等属性都会不同。...于是我们考虑自定义几个 Label 和 Button: //MARK: - Hello 系列产品 class HelloButton: UIButton { init() { let...这时候如果是支持范型语言,就可以使用范型参数来解决这个问题(前提是工厂方法没有针对某个特定子类产品操作),我们把 PageView 改成一个范型类: class PageView<L: UILabel...像 Self、JavaScript 这样基于原型语言可以说处处都用到了原型模式,而像SmallTalk、OC、Ruby 等动态语言中,类本身可以当作对象传递并用其创建实例对象,甚至 Swift 也可以直接用所谓元类型

64040

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

接下来,简单介绍一个我实际开发抽取出来工具类 - MNKit MNButton 业务开发UIButton控件应该算最常用控件之一了,而且它属性设置还贼麻烦,很多个都是要用 [ set...这一行代码即可创建拥有上面代码所需要按钮基本属性 UIButton 除了有文字标题展示样式之外,也有用image 或者 backgroundImage展示情况 //一句代码设置 - 按钮背景图片...,那么比它更常见UILabel莫属了,和UIButton一样,UILabel很常见,又经常有许多属性需要设置 - 字体大小、颜色、内容等等 //快速设置内容,文字颜色,字体大小,父控件 [MNLabel...,就在网络请求成功 与 网络请求失败block,添加一个[SVProgress dismiss] 如果有封装BaseViewController,可以统一- (void)viewWillDisappear...是有动画效果,延迟加载,如果网络请求过快(1s以内就请求成功),可能会导致提示框一直界面上出现 ---- 因为有一些我封装工具类可能就我们现在这种项目中用得到,如果有需要或者以后迭代过程可以通过外部参数控制

1.6K80

教你如何自定义AlertView

前言: 系统自带alertView界面有点呆板,动画有点单一,总之随着业务发展,系统自带alertView已经很难满足我们需求,那自定义就很有必要。...本文就介绍如何自定义alertView,看完你就懂得制作属于自己alertView了 一、创建DWAlert.swift 创建一个类名为DWAlert.swift,class DWAlert:...var alertContentLabel: UILabel! var button: UIButton! var backImageView: UIView!...上面代码const是为了定义弹出框需要坐标和长宽,由于是不变,所有let修饰,与OC常量类似 二、绘制alertView 写一个继承init方法,把title(alert标题),content...方法添加backImageView背景蒙版 2、获取当前主窗口,并定义一个alertViewframe 3、利用UIView.animate对alertView进行动画操作。

1.2K50

理解iOS端WebView同层组件

因此,微信小程序开发框架,还提供了一些以”cover-“开头组件,这些组件本身是原生,只是贴在了WebView上面。借助原生组件,可以极大提高应用性能体验,但是也有一些弊端。...原生组件层级WebView之上,因此无法Web通过标签层级来调整组件z轴位置。 原生组件与WebView文档流是完全脱离,这使得布局控制变得困难。 同层组件出现正为解决这些问题。...iOS,我们使用WKWebView来创建Web视图,WKWebView进行解析渲染时,会将Web组件渲染到WKCompositingView上,这个View是一个原生UIView子类,通常WKWebView...和UIButton原生组件做示例,插槽位置寻找可以采用递归方式,如下: - (UIView *)findView:(UIView *)root str:(NSString *)pre ids:(NSString...本文中也实现了一个简单Demo来演示同层组件,Demo非常捡漏,希望起到抛砖引玉,帮助你打开创新思路。下面是一些建议,有兴趣你可以尝试下在iOS端实现一套完整同层组件渲染框架。

2.6K20

Swift| 基础语法(五)

前言 总结下 swift下基础语法,里面涉及到:常量&变量、Swift数据类型、逻辑分支、循环、字符串相关、数组和字典、方法书写调用等内容,考虑到阅读体验分多篇来展示,希望对大家学习swift...makeKeyAndVisible() return true } 二、UILabelUIButton、UIImageView使用 let mylabel = UILabel(frame...} Swift,创建tableViewCell方法可以分为两种创建tableView时候注册和需要使用时手动创建。先聊聊创建tableView时候直接注册cell: myTb?....可以自定义cell处理点击状态下显示 var label1 :UILabel? var label2 :UILabel?...因为Swift,所有对象构造器默认都是public,所以需要重写你init让其成为私有的。 这样就保证像如下代码编译报错,不能通过。 六、从相册选择照片或者拍照 ?

2K30

六天完成一个简单iOS App - 第二天

登录页面效果图 关注页面比较简单,我们这里使用xib创建界面,比较好方法是先设置好中间label位置,然后根据中间label位置来确定上面图片和下面按钮位置,这里不在赘述了,只有一个注意点,当我们...快速登录按钮布局 首先快速登录方便两条线都是图片,只需要简单设置frame即可,下面的三个快速登录明显是按钮,但是我们知道,UIButton默认是UIImage左边,titleLabel右边,...建议在这里使用。 方法二:自定义button 并且重写layoutSubviews。...如果button是从storyboard或者xib加载会调用aweakfromnib方法,我们可以aweakFromNib对控件进行一些统一设置,layoutSubviews设置控件内内容位置...默认情况下矩形框和内容是重合 frame 以父控件 内容左上角为坐标原点, 计算出控件自己 矩形框位置和尺寸 bounds 以控件自己 内容左上角为坐标原点, 计算出控件自己 矩形框位置和尺寸

2K50

【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

文件 与 真实文件系统目录文件不是对应; -- 逻辑分组 : Xcode 将 真实文件进行了逻辑分组, 并不是真实文件结构; -- 自定义分组 : 开发者还可以创建自定义分组; mac ...UIViewController IBAction 方法 与 界面设计文件 UIButton 组件绑定; -- 触发 IBAction 方法 : 界面 UIButton 被点击, 就会回调...自定义 UI 控件 (1) 自定义组件简介 自定义组件简介 :  -- UIView 基类 : 所有的 UI 控件都继承了 UIView 基类, UI 组件 UIView 提供空白区域上绘制具体细节...; -- 适用情况 : IOS 系统提供组件不满足需求时, 就需要自定义组件; (2) UIView 基类常用方法 UIView 基类常用方法简介 :  -- "initWithFrame :"...Main.storyboard : Custom Class 属性, 输入自定义类, 然后点击回车, 默认 View 就会变成我们设置自定义类; -- 演示效果 :  六.

4.9K30

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

属性 [ 随机位置生成 ] | ④ 添加子组件到父容器 ) 生成子组件代码 : 1.创建子组件 : 调用 UILabel alloc init 方法 , 生成子组件 ; //1....]; 3.控件类型准备 : 父容器添加 UIButton 组件 , 用于区分 UILabelUIButton , 这里只删除 UILabel 控件 ; 4.判定组件类型 : 使用 isKindOfClass...都需要把握好 , 宽度如果不够 , 后面会出现 … 省略情况 , 同理 高度不足 也会出现这种情况 ; ---- ( 2 ) UIButton 启用 禁用 ( ① enabled 属性 YES NO...) UIButton 启用 禁用 : 1.enabled 属性 ( 可视化修改 ) : UIButton 属性查看器 Control 模块下 , Enabled 属性用来设置 按钮是否可用...[推荐] | ② 放在根目录[推荐] ) 图片放置 位置 : 准备两张图片 , 分别放在 代码 根目录 和 Assets.xcassets ; 1.放在 根目录 : Bundle

3.6K40

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

事件总是能找到解决方法, 有的人会先建立一个按钮控件铺在下面,而在上面分别覆盖一个UIImageView和UILabel来实现;而有的人则干脆UIButton上建立一个UIImageView和UILabel...答案是否定,其实UIButton本身是可以支持各种图文结合,既然UIButton上能同时显示图片和文字,那就可以肯定UIButton里面本身一定有一个UIImageView和UILabel8子视图...,注意这里也算上他们之间间隔值padding 我们可以通过更改按钮titleEdgeInsets和imageEdgeInsets值调整文本和图片位置。...图片在右,文字左,距离按钮两边边距 在这种方式,图片和文本都是垂直居中对齐,这部分是不需要调整,而文本左边则需要由原来titleRect.origin.x移动到左边padding位置,而图片左边则需要由原来...图片在左,文字右,距离按钮两边边距 这种方式,图片和文字垂直位置不需要调整,而只需要将图文水平位置调整即可,而调整方法和上面的相似,只是图片移到左边儿文字移到右边而已。

2.8K10
领券