Я пытаюсь использовать календарь Kal в своем проекте. Вот что я понимаю до сих пор:
- Любой контроллер представления, который вызывает Kal, должен реализовать метод UITableViewDelegate «didSelectRowAtPath».
Проблема:
- Мой контроллер представления, который вызывает Kal уже, имеет существующее табличное представление (одна из ячеек будет вызывать Kal)
Чтобы решить эту проблему, я попытался вытолкнуть промежуточный контроллер представления из ячейки в моем основном табличном представлении следующим образом:
ScheduleViewController *svc = [[ScheduleViewController alloc] init];
[svc setTitle:@"Schedule"];
[self.navigationController pushViewController:svc animated:YES];
Из viewDidLoad ScheduleViewController я загружаю фактический календарь Kal:
KalViewController *kal = [[KalViewController alloc] init];
[kal setDelegate:self];
[kal setTitle:@"Schedule"];
[self.navigationController pushViewController:kal animated:NO];
Итак, как только я это сделаю, я смогу вывести календарь. Тем не менее, я не могу вернуться в главное меню с помощью кнопки «Назад». Я создал кнопку «Назад» в ScheduleViewController:
[kal.navigationItem
setBackBarButtonItem:[[UIBarButtonItem alloc] initWithTitle:@"Back"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(test)]];
Я поместил это в несколько разных мест (viewDidLoad, viewWillAppear) и не могу заставить его работать. Когда я нажимаю «Назад», он все равно переходит к ScheduleViewController, а не обратно. "тест" никогда не вызывается. Я пробовал popToRootViewController, [[self.presentingViewController PresentViewController] rejectViewController] и некоторые другие. Просто не хочет работать.
- Это лучший способ использовать Kal?
- Как я могу использовать popToRootViewController (пропуская ScheduleViewController) с помощью этого метода?
Спасибо! Это мой первый пост, поэтому, пожалуйста, дайте мне знать, если я могу что-то сделать, чтобы вопрос был менее запутанным.