我想从AppDelegate获取托管对象上下文,但是在我将两行代码放入方法之后应用程序崩溃了,即使我没有做任何其他事情,并且调试区域中有一条消息:"CoreData:无法加载NSManagedObjectModel.nil是非法的URL参数......"
我的方法中添加的代码:
AppDelegate *delegate = [UIApplication sharedApplication].delegate;
NSManagedObjectContext *managedObjectContext = delegate.managedObjectContext;
Run Code Online (Sandbox Code Playgroud)
AppDelegate中的-managedObjectModel方法:
- (NSManagedObjectModel *)managedObjectModel {
// The managed object model for the application. It is a fatal error for the application not to be able to find and load its model.
if (_managedObjectModel != nil) {
return _managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"FoodPin" withExtension:@"momd"];
_managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return _managedObjectModel;
}
Run Code Online (Sandbox Code Playgroud)
和-managedObjectContext方法:
- (NSManagedObjectContext *)managedObjectContext {
// Returns the managed object context for the application …Run Code Online (Sandbox Code Playgroud) 我正在编写一个可扩展的tableView标头,我需要在tableView委托方法中准确设置标头的高度.我现在使用以下方法计算标题的高度(多行标签):
CGRect calcuRect = [headerText boundingRectWithSize:CGSizeMake(myLabelWitdh, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:myLabelFont} context:nil];
CGFloat headerHeight = calcuRect.size.height;
Run Code Online (Sandbox Code Playgroud)
但是,我发现计算出的高度只是文本而不包含行空间.那么我怎样才能获得标签的行空间高度?或者如何用线条空间获得准确的UILabel高度?