UIButton 框架大小不会更新以支持设置中增加的字体大小

问题描述 投票:0回答:1

我有一个基本的 UIButton,具有以下约束:

我有一些基本的尾随和顶部约束,并且我有 >= 宽度和高度约束设置为 48,因为我希望 48 作为按钮的最小宽度和高度。

我的目标是让按钮中的文本随着用户从设置中更改字体大小而变大。

按钮中的文本尺寸似乎在增加,但是,框架似乎没有更新以适应这种增加。

这就是我的意思是从控制面板设置字体大小

但是,如果我退出应用程序并再次启动它,框架大小会正确计算,并且从控制面板更改文本大小似乎会使按钮中的字体大小适当缩小和增大。

似乎需要首先确定最大宽度/高度。

在代码中我什至设置了这个:

skipButton.titleLabel?.font = UIFont.font(forTextStyle: .body, fontName: .suecaNanoRegular, size: 14)
skipButton.titleLabel?.adjustsFontForContentSizeCategory = true

如何让 UIButton 在运行时支持动态字体大小。

这是我的其他按钮设置(如果有助于调试)。

ios swift uikit uibutton autolayout
1个回答
0
投票

问题是你的字体本身不是动态的。

删除有关标题标签的代码,并将故事板中的按钮重新配置为普通样式而不是默认样式,并为其指定动态字体设置,如以下屏幕截图所示:

按钮标题字体大小将按照您的预期运行。

© www.soinside.com 2019 - 2024. All rights reserved.