- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在试用新的 iOS 7 API,执行以下代码需要一分钟多的时间!
NSLog(@"start encoding");
NSString *htmlBody = @"<html><body>I am <b>bold</b> and <i>italic</i>";
NSStringEncoding encoding = NSUnicodeStringEncoding;
NSData *data = [htmlBody dataUsingEncoding:encoding];
NSDictionary *options = @{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute: @(encoding)};
NSAttributedString *body = [[NSAttributedString alloc] initWithData:data
options:options
documentAttributes:nil
error:nil];
NSLog(@"end encoding%@", body);
这是怎么回事?
最佳答案
在做了一些调查之后,我意识到我正在调用这个方法作为 webview didFinishLoading 回调的一部分。我相信这会导致某种形式的实时锁定或等待 WebKit 的线程。解决方案是让该 webview 方法从 dispatch_aync block 内部调用其委托(delegate)(或其他代码):
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
if (self.successBlock) {
dispatch_async(dispatch_get_main_queue(), ^{
//this success block eventually calls my NSAttributedString code above
self.successBlock();
});
}
}
关于ios - NSAttributedString 初始化数据 :options:documentAttributes:error: is executing very slowly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19198197/
我正在尝试从 NSData 加载文档(它来 self 应用程序中的 Dropbox 文件,但为了简单起见,下面的示例使用了一个 .txt 文件,这导致了我正在尝试解决的相同问题)。 问题:我实例化一个
根据 Apple's documentationCGPDFDocument 有一个名为 documentAttributes 的变量: var documentAttributes: [AnyHash
我正在尝试用 HTML 字符串填充 UITableView。获取字符串,将它们放入单元格等。一切正常。我想更改我的 NSAttributedText 的字体和字体大小。我写了下面的代码。 我通过第一个
我正在试用新的 iOS 7 API,执行以下代码需要一分钟多的时间! NSLog(@"start encoding"); NSString *htmlBody = @"I am bold and it
我正在尝试使用 RTFDFromRange 方法将 NSAttributedString 转换为 NSData。得到这个: No visible @interface for 'NSAttribute
Xcode 7 正在为看起来像这样的代码生成一堆警告: NSAttributedString *anEntry = ... someData = [anEntry RTFFromRange: NSMa
在 iOS 10 之前,下面的代码给出了正确的结果,但在 iOS 10 之后却没有。不知道 iOS 版本怎么会导致这个问题。 NSString *string = @""; NSError *erro
我是一名优秀的程序员,十分优秀!