Я знаю, что это не имеет никакого смысла, но я получаю действительно странную ошибку в приложении для iPhone, которое я создаю с использованием Core Data и вызываю CGRectOffset.Метод didFinishLaunchingWithOptions моего делегата приложения выглядит следующим образом:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Setup the Managed Object Context
NSManagedObjectContext *context = [self managedObjectContext];
if (!context) {
// Do something - Like exit
}
//Load up the database form a pList
NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"tJournals" ofType:@"plist"];
NSMutableArray *plistJournals = [NSMutableArray arrayWithContentsOfFile:plistPath];
//Create a bunch of journals
for (NSDictionary *journal in plistJournals) {
[TJournal journalWithDictionary:journal inManagedObjectContext:context];
}
NSError *error = nil;
[context save:&error];
// ------ Create the View Controller ------
// The Scrolling List
JournalListVC *jvc = [[JournalListVC alloc] init];
// Adjust for the Status Bar's height
CGRect viewFrame = CGRectOffset(jvc.view.frame, 0.0, 20.0);
jvc.view.frame = viewFrame;
jvc.managedObjectContext = context;
// Add the View Controller to the screen
[self.window addSubview:jvc.view];
[self.window makeKeyAndVisible];
return YES;
}
В настоящее время приложение вылетает со следующей ошибкой, когда я покидаю строку CGRect viewframe в:
"Завершение приложения из-за необработанного исключения" NSInternalInconsistencyException ", причина: '+ entityForName: не удалось найти NSManagedObjectModel для имени объекта' TJournal ''"
Если я закомментирую строку CGRect, он будет запущенхорошо.Вызов внутри цикла for выполняется очень хорошо (он записывает данные в сущность БД Core Data с именами TJournal и делает именно то, что должен.) Очевидно, что нет никакой зависимости от Core Data для CGRectOffset, поэтому я предполагаю, что эта ошибкаподдельный.Но я не могу, на всю жизнь, понять это.
Я пытался очистить все цели, стереть базу данных в симуляторе и т. Д. Но, похоже, ничего не работает.
Есть идеи?Спасибо!