2014-11-18 4 views
0

Я следовал учебник по Lynda.com для CoreData, и все это работает хорошо, но когда я пытаюсь добавить новый UIViewController (который будет начальная UIViewController) вместо UITableViewController он падает. Я подумал, возможно, что изменение objectIndex в моем делете приложения на 1 будет работать, так что теперь это 2-й объект в контроллере навигации.основных данных при добавлении нового ViewController (Линда учебник)

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    UINavigationController *nav = (UINavigationController *)self.window.rootViewController; 
    PersonTableTableViewController *ptvc = (PersonTableTableViewController *)[[nav viewControllers]objectAtIndex:1]; 
    ptvc.managedObjectContext = self.managedObjectContext; 

    return YES; 
} 

Любые идеи, было бы здорово, я знаю, что это легко исправить, но я боролся с ним

+0

Можете ли вы объяснить ваш текущий и желаемый, вид иерархии контроллера немного больше? Можно ли опубликовать снимок вашей раскадровки? – pbasdf

ответ

0

Если вы хотите изменить первоначальный вид контроллера просто импортировать контроллер представления и создать экземпляр контроллер представления и замените его экземпляром PersonTableTableViewController. Допустим, вы хотите иметь PersonListTableViewController в качестве исходного контроллера представления, то вы можете инициализацию, как это, перейдите в раскадровку и заменить RootViewController в navigationcontroller на PersonListViewController ниже и используйте код

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    UINavigationController *nav = (UINavigationController *)self.window.rootViewController; 
    PersonListTableViewController *ptvc = (PersonListTableViewController *)[[nav viewControllers]objectAtIndex:0]; 
    ptvc.managedObjectContext = self.managedObjectContext; 

    return YES; 
} 
+0

это то же самое, что у меня уже есть, я попробовал добавить новый ViewController, который я назвал HomeViewController, и я хотел, чтобы он был в качестве начального ViewController, и я заменил все в приведенном выше коде HomeViewController, но он не распознал «managedObjectcontext» – burrGGG

+0

вам нужно создать экземпляр управляемых объектов в HomeViewController.h – suhit

Смежные вопросы