2015-03-31 117 views
1

在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 
+3

对我来说仍然很好。什么“不起作用”?预期成绩?实际结果?我也很惊讶,你试图看到应用于一个空字符串的属性?!你的所有变量(字体,textColor等)定义在哪里? – 2015-04-02 22:42:17

+0

为了清晰起见,我已经更新了这个问题,是的,结果证明空串是问题所在。被错误误导,认为它与属性有关。所以我调整了这个问题 - 我怎样才能设置属性的文本没有占位符字符串? – 2015-04-02 23:58:03

回答

2

如果更改placeHolderText到NSAttributedString(string: " ", attributes: attr),那么你可以通过改变它的text属性和新的文本将所有相同的属性改变UITextView的文本。 我希望能回答你的问题。

相关问题