У меня есть UITabBarConroller, который я использую для переключения между 3 различными представлениями. Это все работает отлично. На одной из моих вкладок я добавил кнопку с надписью «Добавить», добавил к ней выход, а также метод IBAction, который выглядит следующим образом:
// Method used to load up view where we can add a new ride
- (IBAction)showAddNewRideView {
MyRidesViewController *controller = [[MyRidesViewController alloc] initWithNibName:@"AddNewRide" bundle:nil];
controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:controller animated:YES];
[controller release];
}//end showAddNewRideView
В настоящее время это работает нормально и загружает мой файл пера AddNewRide. Но как только этот вид загружается, у меня появляется кнопка отмены, которую я нажимаю, чтобы вернуться к предыдущему виду. Итак, я решил сделать обратное, используя следующий метод, который загрузит мой предыдущий перо:
- (IBAction)cancelAddingNewRide {
MyRidesViewController *controller = [[MyRidesViewController alloc] initWithNibName:@"MainWindow" bundle:nil];
controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:controller animated:YES];
[controller release];
}//end cancelAddingNewRide
Но при попытке загрузки пера MainWindow программа вылетает, и я получаю следующую ошибку:
2010-05-05 20:24:37.211 Ride[6032:207] *** -[MyRidesViewController cancelAddingNewRide]: unrecognized selector sent to instance 0x501e450
2010-05-05 20:24:37.213 Ride[6032:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[MyRidesViewController cancelAddingNewRide]: unrecognized selector sent to instance 0x501e450'
Итак, я немного растерялся относительно того, почему это будет работать в одну сторону, а не в другую.