Boz*_*ack 4 nsattributedstring ios
我正在尝试加载文档NSData(它来自Dropbox我的应用程序中的文件,但为了简单起见,下面的示例使用.txt文件,这导致我正在尝试解决的相同问题).
问题:我实例化一个NSDictionary,并将其[NSAttributedString -initWithData:options:documentAttributes:error:]作为out参数传递给它.
但是,NSDictionary实例被取消分配,并导致-initWithData:options:documentAttributes:error:崩溃.
当我启用时NSZombie,我得到的错误是:[_ _ NSDictionaryI retain]:发送到解除分配的实例的消息
- initWithData:options:documentAttributes:error:当我将NULL传递给documentAttributes时运行正常.
这是代码:
NSError* error;
NSString* path = [[NSBundle mainBundle] pathForResource:@"Forward Thinking"
ofType:@"txt"];
NSData* data = [NSData dataWithContentsOfFile:path options:NSDataReadingMappedAlways error:&error];
if (data) {
dispatch_async(dispatch_get_main_queue(), ^{
NSDictionary* documentAttributes = [[NSDictionary alloc] init];
NSAttributedString* attrStr = [[NSAttributedString alloc] initWithData:data options:nil documentAttributes:&documentAttributes error:NULL];
self.textView.attributedText = attrStr;
});
}
Run Code Online (Sandbox Code Playgroud)
任何线索都会很棒!
Rob*_*ier 11
您不应该将NSDictionary传递分配给此方法.你想要的是:
NSDictionary* documentAttributes;
NSAttributedString* attrStr = [[NSAttributedString alloc] initWithData:data options:nil documentAttributes:&documentAttributes error:NULL];
Run Code Online (Sandbox Code Playgroud)
它正在传递documentAttributes给你.您没有将属性传递给它.
| 归档时间: |
|
| 查看次数: |
3250 次 |
| 最近记录: |