首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >UILabel不会自动缩小文本以适应标签大小

UILabel不会自动缩小文本以适应标签大小
EN

Stack Overflow用户
提问于 2012-03-28 13:16:49
回答 17查看 155.5K关注 0票数 131

我有一个奇怪的问题,我已经处理了8个多小时了..根据情况,我必须动态计算UILabels大小,

e.g

我的UIViewController收到一个事件,我改变了UILabels的大小。从大到小。我的UILabel的大小变小了,我得到了正确的所需大小,但我的UILabel中的文本保持不变,相同的字体大小等等。我需要字体变小,以便整个文本适合UILabel。因此,问题是如何使文本适合我的标签与autoshrinking或类似的东西?

在我的xib中,UILabels autoshrink被选中,行数也被设置为0,并且我的字符串有新的行号(\n),并且我选择了linebreakmode to wordwrap。也许有谁和我现在的情况一样,可以帮助我?我真的很感激。

提前感谢!

编辑: UILabel最小字体大小设置为10

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2012-10-16 20:08:06

如果你还在寻找更好的解决方案,我想这就是你想要的:

一个布尔值,指示是否应减小字体大小以使标题字符串适合标签的边框(此属性仅在numberOfLines属性设置为1时有效)。

设置此属性时,还必须设置minimumScaleFactor (较好的默认值为0.5)。

斯威夫特

代码语言:javascript
运行
AI代码解释
复制
var adjustsFontSizeToFitWidth: Bool { get set }

Objective-C

代码语言:javascript
运行
AI代码解释
复制
@property(nonatomic) BOOL adjustsFontSizeToFitWidth;

一个布尔值,指示是否应调整字母之间的间距以使字符串适合标签的边界矩形。

斯威夫特

代码语言:javascript
运行
AI代码解释
复制
var allowsDefaultTighteningForTruncation: Bool { get set }

Objective-C

代码语言:javascript
运行
AI代码解释
复制
@property(nonatomic) BOOL allowsDefaultTighteningForTruncation;

Source

票数 169
EN

Stack Overflow用户

发布于 2015-12-15 07:29:15

这就是我如何在iOS 9.2,Xcode7.2中获得UILabel Autoshrink工作(特别是在4s设备中从6s Plus Storyboard适合标签字体的高度)。

  • 行数为0
  • 换行符: Clip
  • Autoshrink: Minimum
  • Scale 0.25
票数 133
EN

Stack Overflow用户

发布于 2013-09-17 07:44:21

iOS 6中不推荐使用minimumFontSize

所以使用minimumScaleFactor而不是minmimumFontSize

代码语言:javascript
运行
AI代码解释
复制
lbl.adjustsFontSizeToFitWidth = YES
lbl.minimumScaleFactor = 0.5

Swift 5

代码语言:javascript
运行
AI代码解释
复制
lbl.adjustsFontSizeToFitWidth = true
lbl.minimumScaleFactor = 0.5
票数 80
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9908334

复制
相关文章
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
mzlogin
2020/04/16
1.4K0
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
零式的天空
2022/03/28
1.2K0
从0实现React 系列(二):组件更新
假设React是你日常开发的框架,在日复一日的开发中,你萌生了学习React源码的念头,在网上一顿搜索后,你发现这些教程可以分为2类:
一只图雀
2020/06/28
1.5K0
从0实现React 系列(二):组件更新
React中传入组件的props改变时更新组件的几种实现方法
我们使用react的时候常常需要在一个组件传入的props更新时重新渲染该组件,常用的方法是在componentWillReceiveProps中将新的props更新到组件的state中(这种state被成为派生状态(Derived State)),从而实现重新渲染。React 16.3中还引入了一个新的钩子函数getDerivedStateFromProps来专门实现这一需求。但无论是用componentWillReceiveProps还是getDerivedStateFromProps都不是那么优雅,而且容易出错。所以今天来探讨一下这类实现会产生的问题和更好的实现方案。
MudOnTire
2019/05/26
5.3K0
react 学习(三) 组件更新
我们上一节了了解了函数式组件和类组件的处理方式,本质就是处理基于 babel 处理后的 type 类型,最后还是要处理虚拟 dom。本小节我们学习下组件的更新机制。
测不准
2022/04/08
1.1K0
react 学习(三) 组件更新
Flutter-常用组件(持续更新)Flutter-常用组件(持续更新)题纲:注:
相当于iOS开发中的给定尺寸的UIView。根据文档中的解释该控件会限制子控件的大小如果子控件允许的话。尤其是控件本身不好控制大小,则可以使用该控件来控制大小,列如:CircleAvatar。
用户8893176
2021/08/09
7440
更新时 Fiber 节点能否复用?
当产生更新时,workInProgressTree 的 Fiber 节点有两种方式生成:
玖柒的小窝
2021/12/07
5400
Oracle merge合并更新函数
本博客介绍一下Oracle merge合并函数,业务场景:新增数据的时候要先查询数据库是否已经有改数据,有数据就更新数据,没数据才新增数据,这是很常见的业务场景,如果是用Oracle数据库的话,其实直接用merge函数效率更快,而且merge函数性能也相对比较好
SmileNicky
2019/03/06
7620
plsql 触发器教程-当表1的某条数据更新时,表2的某些数据也自动更新
新建触发器,当更新test001中的D为某个值x时,test002中的D(不一定是D,也可以是C)也变成x
小小鱼儿小小林
2020/06/24
1.4K0
plsql 触发器教程-当表1的某条数据更新时,表2的某些数据也自动更新
PHP函数大全·持续更新
邮箱验证 function is_valid_email($email) { if (preg_match('/^[\w\-\.]+@[\w\-\.]+(\.\w+)+$/', $email)) { return true; } else { return false; } } OR function check_email($email) { $result = trim($email); if (filter_var($resu
骤雨重山
2022/01/17
9970
关于conda 更新时权限的问题
就被告知以下错误:PermissionError(13,'Permission denied)
戈贝尔光和热
2018/12/27
2.1K0
Vue是如何触发组件更新的?
Vue是数据驱动的一个视图框架,所谓数据驱动就是DOM是通过数据来映射的,只有在数据改变的情况下视图才会发生改变。
越陌度阡
2022/05/06
1K0
Vue是如何触发组件更新的?
项目中更新Stimulsoft组件的方法
Stimulsoft Ultimate是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。
全栈程序员站长
2022/09/06
2.3K0
项目中更新Stimulsoft组件的方法
js常用函数集锦(持续更新)
js常用函数规整 /* *获取某一段时间内所有日期 * @param starDay 开始时间 * @param endDay 结束时间 */ function getDayAll(starDay, endDay) { var arr = []; var dates = []; // 设置两个日期UTC时间 var db = new Date(starDay); var de = new Date(endDay); // 获取两个日期GTM时间 var s = db.
憧憬博客
2020/10/14
8500
MySQL 日期函数大全(更新中.....)
解析:以年-月-日这种格式输出。%r代码am还是pm。am表示凌晨和上午,pm表示下午和晚上。(0:00-12:00)。
贵哥的编程之路
2022/11/16
4.1K0
MySQL 日期函数大全(更新中.....)
Vue父组件向子组件传递一个动态的值,子组件如何保持实时更新实时更新?
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/129742.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/30
4.5K0
python更新pip失败_findwindow函数
HWND h = FindWindow(NULL, TEXT(“SomeApp”));
全栈程序员站长
2022/09/21
7990
JAVA库函数总结【持续更新】
生成随机数: Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值. Random rand = newRandom(); rand.nextInt(int s);//生成0~s内的整数 int randNumber =rand.nextInt(MAX - MIN + 1) + MIN;//生成指定范围的整数 关于web服务获取服务器ip、hostname: 1. string ip = Request.ServerVariables["Remote_Add
瑾诺学长
2018/09/21
9120
MySQL 高级函数大全(更新完成)
解析:CASE 表示函数开始,END 表示函数结束。如果 condition1 成立,则返回 result1, 如果 condition2 成立,则返回 result2,当全部不成立则返回 result,而当有一个成立之后,后面的就不执行了。 WHEN是if THEN是输出语句 ESLE代表当上面的全部都不行。就用ELSE
贵哥的编程之路
2022/11/16
9090
MySQL 高级函数大全(更新完成)
点击加载更多

相似问题

当web组件属性被更新时,如何更新道具?

12

当支持更新时更新组件

32

组件不更新道具更新

13

设置状态在反应组件从道具和更新时,道具改变?

25

当状态道具更改时,响应组件不更新

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档