【发布时间】:2018-04-03 06:18:58
【问题描述】:
我处于一种情况,我想根据 UIButton 的高度设置 UIButton 元素的 titleLabel 的字体大小,所以这是我的设置:
let button: UIButton = {
let button = UIButton()
button.translatesAutoresizingMaskIntoConstraints = false
button.setTitle("title", for: [])
button.titleLabel?.minimumScaleFactor = 0.5
button.titleLabel?.numberOfLines = 1
button.titleLabel?.adjustsFontSizeToFitWidth = true
button.titleLabel?.lineBreakMode = .byClipping
return button
}()
override func viewDidLoad() {
super.viewDidLoad()
self.view.addSubview(self.button)
self.button.bottomAnchor.constraint(equalTo: self.someElement.topAnchor, constant: 0).isActive = true
self.button.widthAnchor.constraint(equalTo: self.view.widthAnchor, multiplier: 0.33).isActive = true
self.button.heightAnchor.constraint(equalTo: self.view.heightAnchor, multiplier: 0.1).isActive = true
self.button.centerXAnchor.constraint(equalTo: self.view.centerXAnchor, constant: 0).isActive = true
}
会发生什么?
按钮宽度设置为视图宽度的 33% -> 好
按钮高度设置为视图高度的 10% -> 好
按钮 titleLabel 字体大小保持较小且不随按钮高度缩放... -> 不好
谁能给我解释一下?
【问题讨论】:
标签: swift layout uibutton constraints nslayoutconstraint