Swift UILable 設置內(nèi)邊距實例代碼
更新時間:2016年07月22日 12:00:24 投稿:lqh
本文主要介紹Swift UILable 設置內(nèi)邊距,這里提供示例代碼供大家參考,有需要的小伙伴可以看下
前言
對應一個曾經(jīng)開發(fā) Android 的人來說,沒有這些基礎屬性簡直令人發(fā)指,還是表噴這個,認真寫代碼 - - #
正文
代碼實現(xiàn):
class UILabelPadding : UILabel {
private var padding = UIEdgeInsetsZero
@IBInspectable
var paddingLeft: CGFloat {
get { return padding.left }
set { padding.left = newValue }
}
@IBInspectable
var paddingRight: CGFloat {
get { return padding.right }
set { padding.right = newValue }
}
@IBInspectable
var paddingTop: CGFloat {
get { return padding.top }
set { padding.top = newValue }
}
@IBInspectable
var paddingBottom: CGFloat {
get { return padding.bottom }
set { padding.bottom = newValue }
}
override func drawTextInRect(rect: CGRect) {
super.drawTextInRect(UIEdgeInsetsInsetRect(rect, padding))
}
override func textRectForBounds(bounds: CGRect, limitedToNumberOfLines numberOfLines: Int) -> CGRect {
let insets = self.padding
var rect = super.textRectForBounds(UIEdgeInsetsInsetRect(bounds, insets), limitedToNumberOfLines: numberOfLines)
rect.origin.x -= insets.left
rect.origin.y -= insets.top
rect.size.width += (insets.left + insets.right)
rect.size.height += (insets.top + insets.bottom)
return rect
}
}
代碼說明:
通過 IBInspectable 可以支持 UILable 在 Storyboard 里面就能指定內(nèi)邊距,非常方便:

以上就是Swift UILable 設置內(nèi)邊距實例代碼,開發(fā)IOS應用需要用的可以參考下。
相關文章
Swift TableView實現(xiàn)凍結(jié)窗格功能
這篇文章主要為大家詳細介紹了Swift TableView實現(xiàn)凍結(jié)窗格功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
Swift如何調(diào)用Objective-C的可變參數(shù)函數(shù)詳解
這篇文章主要給大家介紹了關于Swift如何調(diào)用Objective-C的可變參數(shù)函數(shù)的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用swift具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2018-03-03

