2013-07-23 3 views
1

EDIT: Прежде чем я продолжу, я должен сказать, что нашел решения для того, что я пытаюсь сделать, ЕСЛИ им использовать приложение на основе навигационного контроллера, но это не мое дело здесь.Выполнение segue из didReceiveRemoteNotification в appDelegate

Ive создайте мои уведомления о путях, чтобы иметь Job, я зарегистрировал все и получил нажатие, щелкнул push-уведомление и получил правильные журналы.

Моя цель, я хочу выполнить segue, чтобы добраться до моих конкретных контроллеров в зависимости от того, какая работа там будет.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { 
    NSString *job = [[userInfo valueForKey:@"aps"] valueForKey:@"job"]; 

    if([job isEqualToString: @"msg"]) { 
     NSLog(@"Going to message"); 
    } 
    if ([job isEqualToString: @"friend"]) { 
     NSLog(@"Going to friend request"); 
    } 
    if ([job isEqualToString: @"inv"]) { 
     NSLog(@"Going to invite notifications"); 
    } 
    if ([job isEqualToString: @"find"]) { 
     NSLog(@"Going to find notifications"); 
    } 
} 

ответ

1
if([job isEqualToString: @"msg"]) { 
    NSLog(@"Going to message"); 
    UIStoryboard* storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    UIViewController* detailVC = [storyBoard instantiateViewControllerWithIdentifier:@"msg"]; 
    [self.window.rootViewController presentViewController:detailVC animated:YES completion:nil]; 
} 
+0

им не получаю 'Нет видимых @interface для 'AppDelegate' объявляет селектор«presentViewController: анимированные: completion'' –

+0

я исправлена ​​ошибка, заменив '' self' с self.window.rootViewController' и проверит в ближайшее время, чтобы узнать, работает ли это. Благодаря! –

+0

@AaronRussell Да, я отредактировал свой ответ, мой плохой. –

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