Локальное объявление myViewController скрывает экземпляр

В методе делегата листа действий, который я модалирую в другое представление на основе индекса кнопки, это метод:

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {

    if (buttonIndex == 0) {
        NSLog(@"first button was pressed");
    } else if (buttonIndex == 1) {
        MyViewController *myViewController = [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil];
        UINavigationController *navigationController = [[UINavigationController alloc]initWithRootViewController:myViewController];
        [self.navigationController presentViewController:navigationController animated:YES completion:nil];
    }
}

я получаю ошибку рядом с объявлением nevigationConroller, кто-то знает, в чем проблема?

я объявляю MyViewController в классе.h этого класса..

Спасибо

1 ответ

Решение

Класс, содержащий ваши actionSheet:clickedButtonAtIndex: Метод имеет ивар по имени myViewController, Вы создали локальную переменную с именем myViewController, Вашему проекту XCode было приказано рассматривать это как ошибку, а не просто как предупреждение. Измените имя локальной переменной.

MyViewController *myVC = [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc]initWithRootViewController:myVC];
[self.navigationController presentViewController:navigationController animated:YES completion:nil];
Другие вопросы по тегам