如何在没有占位符文本的情况下设置属性文本?
How can I set the attributed text while having no placeholder text?
在 Xcode 6.2 中有效的代码不再有效,我无法弄清楚如何修复它。字符串属性现在被忽略,除非我设置默认文本。这是我现在得到的:
let font = UIFont(name: "Arial-BoldMT", size: 42.0)!
let textStyle = NSMutableParagraphStyle.defaultParagraphStyle().mutableCopy() as! NSMutableParagraphStyle
textStyle.alignment = NSTextAlignment.Center
let textColor = UIColor.whiteColor()
var shadow = NSShadow()
shadow.shadowColor = UIColor.blackColor()
shadow.shadowOffset = CGSizeMake(2.0,2.0)
var attr = [String:NSObject]()
attr = [
NSFontAttributeName: font,
NSForegroundColorAttributeName: textColor,
NSParagraphStyleAttributeName: textStyle,
NSShadowAttributeName: shadow
]
let placeholderText = NSAttributedString(string: "", attributes: attr)
textView.attributedText = placeholderText
如果将 placeHolderText 更改为 NSAttributedString(string: " ", attributes: attr)
,则可以通过更改其 text
属性 来更改 UITextView
的文本,新文本将包含所有相同的属性。
我希望这能回答你的问题。
在 Xcode 6.2 中有效的代码不再有效,我无法弄清楚如何修复它。字符串属性现在被忽略,除非我设置默认文本。这是我现在得到的:
let font = UIFont(name: "Arial-BoldMT", size: 42.0)!
let textStyle = NSMutableParagraphStyle.defaultParagraphStyle().mutableCopy() as! NSMutableParagraphStyle
textStyle.alignment = NSTextAlignment.Center
let textColor = UIColor.whiteColor()
var shadow = NSShadow()
shadow.shadowColor = UIColor.blackColor()
shadow.shadowOffset = CGSizeMake(2.0,2.0)
var attr = [String:NSObject]()
attr = [
NSFontAttributeName: font,
NSForegroundColorAttributeName: textColor,
NSParagraphStyleAttributeName: textStyle,
NSShadowAttributeName: shadow
]
let placeholderText = NSAttributedString(string: "", attributes: attr)
textView.attributedText = placeholderText
如果将 placeHolderText 更改为 NSAttributedString(string: " ", attributes: attr)
,则可以通过更改其 text
属性 来更改 UITextView
的文本,新文本将包含所有相同的属性。
我希望这能回答你的问题。