我需要通过编程方式设置UIButton标题UILabel的字体大小。
当前回答
button.titleLabel.font = [UIFont systemFontOfSize:size];
应该帮助
其他回答
button.titleLabel.font = <whatever font you want>
对于那些想知道为什么他们的短信不显示的人,如果你这样做了
button.titleLabel.text = @"something";
它不会显示,你需要做:
[button setTitle:@"My title" forState:UIControlStateNormal]; //or whatever you want the control state to be
通过这种方式,您可以设置fontSize并在一个类中处理它。
1. 创建了UIButton的扩展,并添加了以下代码:
- (void)awakeFromNib{
[super awakeFromNib];
[self setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[self.titleLabel setFont:[UIFont fontWithName:@"font"
size:self.titleLabel.font.pointSize]];
[self setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];
}
2.1在代码中创建UIButton
现在如果你在你的代码中创建了一个UIButton, #import extension of yourUIButton '并创建按钮。
2.2在界面生成器中创建按钮
如果你在界面构建器中创建了UIButton,选择UIButton,转到标识检查器,并为UIButton添加创建的扩展类。
检查自定义字体名称是否添加了“目标成员资格”复选框。这应该会有所帮助。
button.titleLabel.font = [UIFont systemFontOfSize:size];
应该帮助
支持UIButton中的辅助功能
extension UILabel
{
func scaledFont(for font: UIFont) -> UIFont {
if #available(iOS 11.0, *) {
return UIFontMetrics.default.scaledFont(for: font)
} else {
return font.withSize(scaler * font.pointSize)
}
}
func customFontScaleFactor(font : UIFont) {
translatesAutoresizingMaskIntoConstraints = false
self.adjustsFontForContentSizeCategory = true
self.font = FontMetrics.scaledFont(for: font)
}
}
你可以按钮字体现在。
UIButton().titleLabel?.customFontScaleFactor(font: UIFont.systemFont(ofSize: 12))
推荐文章
- 如何使用接口生成器创建的nib文件加载UIView
- iOS如何设置应用程序图标和启动图像
- 更改UITextField和UITextView光标/插入符颜色
- 'Project Name'是通过优化编译的——步进可能会表现得很奇怪;变量可能不可用
- 如何设置回退按钮文本在Swift
- 模拟器慢动作动画现在打开了吗?
- 如何为TableView创建NSIndexPath
- 滑动删除和“更多”按钮(就像iOS 7的邮件应用程序)
- 如何比较两个nsdate:哪个是最近的?
- 使UINavigationBar透明
- 如何改变推和弹出动画在一个基于导航的应用程序
- 删除/重置核心数据中的所有条目?
- Swift to Objective-C头未在Xcode 6中创建
- setNeedsLayout vs. setNeedsUpdateConstraints和layoutIfNeeded vs. updateConstraintsIfNeeded
- 不区分大小写的比较