我有一个问题,UILabel子类切断底部的文本.标签的高度适合文本,底部留有一些空间,但文本仍然被剪掉.
红色条纹是添加到标签图层的边框.
我将标签子类化以添加边缘插入.
override func sizeThatFits(size: CGSize) -> CGSize { var size = super.sizeThatFits(size) size.width += insets.left + insets.right size.height += insets.top + insets.bottom return size } override func drawTextInRect(rect: CGRect) { super.drawTextInRect(UIEdgeInsetsInsetRect(rect,insets)) }
但是,在这种特殊情况下,插入是零.
解决方法
事实证明问题在于
self.lineBreakMode = .ByClipping
改变它
self.lineBreakMode = .ByCharWrapping
解决了这个问题