在Swift中将NSData转换为NSAttributedString

时间:2014-08-05 20:23:31

标签: swift

我在Objective-C中使用此代码:

NSAttributedString* plainString = [[NSAttributedString alloc] initWithData:self.entry.data options:@{} documentAttributes:nil error:nil];

self.entry是对具有多个属性的自定义对象的引用。 data定义为

@property (nonatomic, strong) NSData * data;

但是,在swift中,以下代码会生成" 额外参数'数据'在电话中"错误:

var plainString = NSAttributedString(data: self.entry.data, options: [], documentAttributes: nil, error: nil)

我知道错误是因为类型不匹配。数据参数期待NSData!但我不确定如何达到这一点。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:4)

错误消息具有误导性,错误实际上在第二个参数中: 空字典由[:]表示,而不是[]

NSAttributedString(data: data, options: [:], documentAttributes: nil, error: nil)

或者,您也可以传递options: nil