我有三个按钮,在iPad适应性模式下最终非常接近,但在iPad或iPhone风景时相距甚远。我使用静态尾随/前导/底部空间约束正确缩放按钮,并且它们的高度与视图高度成比例。按钮调整很好,但我必须在viewdidload中以编程方式为不同的屏幕尺寸设置所有按钮标签字体大小。我希望我可以在我的课程中添加可调整大小的标题标签功能,但我似乎无法锁定它。
任何帮助都将不胜感激。
我的自定义按钮类:
import UIKit
class BetterButton: UIButton {
required public init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.titleLabel!.font = UIFont(name: "Marker Comp", size: 200)
self.titleLabel?.minimumScaleFactor = 0.5
self.titleLabel?.numberOfLines = 0
self.titleLabel?.adjustsFontSizeToFitWidth = true
self.layer.cornerRadius = 4
self.layer.shadowOpacity = 1
self.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
self.layer.shadowRadius = 0
self.layer.shadowColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.25).cgColor
}
}
所有按钮文本在运行时都是200,但调整到宽度不会激活。
答案 0 :(得分:1)
尝试添加此内容:
self.titleLabel?.lineBreakMode = NSLineBreakMode.ByClipping
此外,最小的ScaleFactor为0.5的字体大小为200会导致最小的字体大小为100,这仍然相当大。
将minimumScaleFactor更改为0.1或0.05,或将max / normal字体大小更改为30就可以了。