我在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!但我不确定如何达到这一点。任何帮助将不胜感激!
答案 0 :(得分:4)
错误消息具有误导性,错误实际上在第二个参数中:
空字典由[:]
表示,而不是[]
:
NSAttributedString(data: data, options: [:], documentAttributes: nil, error: nil)
或者,您也可以传递options: nil
。