UILabel iOS Swift中的填充[重复]
Posted
技术标签:
【中文标题】UILabel iOS Swift中的填充[重复]【英文标题】:Padding in UILabel iOS Swift [duplicate] 【发布时间】:2016-12-26 18:53:29 【问题描述】:我已经从情节提要创建了一个标签,现在我正在尝试为该标签提供填充。我创建了一个类并尝试了以下两种方法,但没有任何效果。请帮忙。
override func drawTextInRect(rect: CGRect)
super.drawTextInRect(UIEdgeInsetsInsetRect(rect, UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 0)))
let padding = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 10)
override func intrinsicContentSize() -> CGSize
let superContentSize = super.intrinsicContentSize()
let width = superContentSize.width + padding.left + padding.right
let heigth = superContentSize.height + padding.top + padding.bottom
return CGSize(width: width, height: heigth)
【问题讨论】:
【参考方案1】:试试这个,我已经用过,它从 SO 本身就可以工作
@IBDesignable class PaddingLabel: UILabel
@IBInspectable var topInset: CGFloat = 5.0
@IBInspectable var bottomInset: CGFloat = 5.0
@IBInspectable var leftInset: CGFloat = 7.0
@IBInspectable var rightInset: CGFloat = 7.0
override func drawTextInRect(rect: CGRect)
let insets = UIEdgeInsets(top: topInset, left: leftInset, bottom: bottomInset, right: rightInset)
super.drawTextInRect(UIEdgeInsetsInsetRect(rect, insets))
override func intrinsicContentSize() -> CGSize
var intrinsicSuperViewContentSize = super.intrinsicContentSize()
intrinsicSuperViewContentSize.height += topInset + bottomInset
intrinsicSuperViewContentSize.width += leftInset + rightInset
return intrinsicSuperViewContentSize
参考:Adding space/padding to a UILabel
【讨论】:
我在 tableViewCell 中有一个标签,我该如何应用它?帮助。谢谢。 在uitableview的cellForRowat方法中实现相同的..到单元格的标签以上是关于UILabel iOS Swift中的填充[重复]的主要内容,如果未能解决你的问题,请参考以下文章
具有大小类的自调整 UITableViewCells 中的多行 UILabel - iOS 8 和 Swift
iOS Swift 如何更改或更新自定义 UITableViewCell 中的 UILabel 属性
ios swift 2如何用json数据填充uipickerview [重复]
View 中的 IOS Swift 3 UILabel 无法正确呈现