在没有Cocoa绑定的情况下为NSTextView设置占位符字符串

时间:2014-10-08 22:29:24

标签: objective-c xcode macos cocoa

我知道" Null Placeholder"可以在Cocoa绑定中设置NSTextFieldNSTextView。此外,对于NSTextField,可以在Xcode界面构建器中设置占位符,或者使用aTextField.placeholderString = ...设置占位符。如果我不使用Cocoa绑定,如何为NSTextView设置占位符字符串?

1 个答案:

答案 0 :(得分:1)

NSTextView中的placeholderAttributedString属性未公开显示。因此,您可以在您自己的子类中实现它并获得默认的占位符行为:

1 - 创建NSTextView的子类

class CustomTextView: NSTextView {
            var placeholderAttributedString: NSAttributedString?
        }

2 - 在Viewcontroller中使用

let attributes : [String : Any] = [NSFontAttributeName : NSFont(name: "HelveticaNeue-Light", size: 19)!, NSForegroundColorAttributeName : NSColor.green]
    yourTextView.placeholderAttributedString =  NSAttributedString(string: "Enter your Name", attributes: attributes)