我在项目中更改字体大小时遇到了麻烦,所以我做了一个游乐场。无论我在哪里放置font.withSize属性,模拟器都不会反映字体大小的变化。
import UIKit
import PlaygroundSupport
class MyViewController : UIViewController {
override func loadView() {
let view = UIView()
view.backgroundColor = .white
let label = UILabel()
label.font.withSize(80)
label.frame = CGRect(x: 150, y: 200, width: 200, height: 20)
label.text = "Hello Mom!"
label.textColor = .black
view.addSubview(label)
self.view = view
}
}
答案 0 :(得分:10)
withSize(_:)
不会修改字体。它返回一个新字体,其属性与您调用它的字体相同,但具有新大小。您必须为其分配标签的字体:
label.font = label.font.withSize(80)
答案 1 :(得分:3)
您无法设置UIFont的大小。
UIFont.withSize()是一个初始值设定项,它将返回一个新的UIFont对象,该对象具有与原始对象相同的特性,但指定了字体大小。
因此,您需要为标签指定一个尺寸正确的新字体。 对于您的示例,您可以使用:
label.font = label.font.withSize(80)