[英]Automatically resizing UIButton height based on title - AutoLayout ON
[英]UIButton, Autolayout and getting the height of the button
我正在嘗試獲取自定義UIButton的真實高度。 但是我總是得到的值比我預期的要小。 我得到大約30,但期望大約45。
override func awakeFromNib() {
print(self.frame.height)
self.layer.cornerRadius = self.layout.frame.height / 2.0
self.clipsToBounds = true
self.titleLabel?.adjustsFontSizeToFitWidth = true
}
這是我的代碼,但是在運行時,自動布局會以某種方式更改大小,這很完美,但是我無法設置正確的cornerRadius(總是太小)。 所以也許我需要乘數或類似的東西。 我已經添加了top和bottom的contentEdgeInsets進行了測試,但這沒什么區別。
謝謝托比亞斯
該視圖尚未在awakeFromNib()
進行布局。 保證已發生布局時,設置拐角半徑。
查看:
override func layoutSubviews() {
super.layoutSubviews()
layer.cornerRadius = frame.height / 2.0
}
對於UIViewController:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
view.layer.cornerRadius = view.frame.height / 2.0
}
在打印尺寸之前,請嘗試調用self.layoutIfNeeded()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.