2016-10-21 31 views
1

枚举的NSAttributed文字我无法得到这个编译正确迅速3.我遇到的我无法在斯威夫特3

enter image description here

实际代码的问题在这里。我不知道为什么它是要求额外的,在代码

data2 = items.data(using: .utf8) 
      attrString = NSAttributedString(htmlData:data2!,options:[DTDefaultFontSize:13.0,DTDefaultFontFamily:"Verdana",DTDefaultFirstLineHeadIndent:5.0],documentAttributes:nil) 
      print(attrString) 

      attrString?.enumerateAttribute(NSAttachmentAttributeName , in: NSMakeRange(0, (attrString?.length)!), options: 0, using:^(id value,NSRange range,BOOL *test){ 
       if(value){ 
        print(value) 
       } 
       }) 

回答

1

您必须复制的目标C例如没有完全将其转换成快捷。像块语法和如果(值)是有效的目标C但不是有效的迅速。以下代码在Swift游乐场中正常工作:

let attrString = NSAttributedString(string: "test", attributes: [NSForegroundColorAttributeName : UIColor.red, NSUnderlineColorAttributeName : UIColor.green]) 
    attrString.enumerateAttribute(NSForegroundColorAttributeName , in: NSMakeRange(0, attrString.length), options: [.longestEffectiveRangeNotRequired]) { value, range, isStop in 
     if let value = value { 
      print(value) 
     } 
    } 
+0

非常令人沮丧的是,xCode中的自动完成功能无法显示该功能。 – BostonMacOSX