解决方法
Here是在Objective C中制作自定义NSTextFieldCell的人的示例.
移植到Swift看起来像这样:
import Cocoa class PaddedTextField: NSTextFieldCell { @IBInspectable var leftPadding: CGFloat = 10.0 override func drawingRect(forBounds rect: NSRect) -> NSRect { let rectInset = NSMakeRect(rect.origin.x + leftPadding,rect.origin.y,rect.size.width - leftPadding,rect.size.height) return super.drawingRect(forBounds: rectInset) } }
我已经将padding添加为@IBInspectable属性.这样您就可以在Interface Builder中设置它.
要使用新的PaddedTextField,只需将常规文本字段拖到xib文件即可
然后将内部TextFieldCell的类更改为PaddedTextField(或者您最终调用的类)
瞧
希望对你有所帮助.