label = (UILabel *)[cell.contentView viewWithTag:1];
label.text =labelString;
size = [label.text sizeWithFont:[UIFont fontWithName:@"ArialMT" size:14] constrainedToSize:CGSizeMake(320,9999) lineBreakMode:UILineBreakModeWordWrap];
label.frame = CGRectMake(5, 5, 295, (size.height+25));
UIFont留下256字节泄漏。
我的应用程序中还存在一些与Web工具包和Foundation库相关的其他泄漏。
NSString *path = [[NSBundle mainBundle] pathForResource:@"Prayers" ofType:@"html"];
NSFileHandle *readHandle = [NSFileHandle fileHandleForReadingAtPath:path];
NSString *htmlString = [[NSString alloc] initWithData:
[readHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding];
这些行留下UIKit WebKit和DataDetectorsCore相关的泄漏。
请为此问题建议任何解决方案。总漏出的内存大约为3 KB,可以 把它留在应用程序中或不。
答案 0 :(得分:1)
我怀疑你在UITableViewCell实例上有泄漏。 你做了一些自定义UITableViewCells,也许你需要检查那些UITableViewCells。
答案 1 :(得分:0)
你提到的UIFont泄漏根本不会泄漏。当您使用fontWithName方法时,UIFont未发布的可能性是UIFont的内部缓存。
答案 2 :(得分:0)
我注意到UIFont
可能在不从主线程调用时可能会泄漏内存。将断言放在代码之前。这将使您能够捕获错误。
NSAssert([NSThread isMainThread]);