Выдвиньте viewController из строки в UITableView в UIPopoverController - PullRequest
1 голос
/ 11 апреля 2011

Итак, в моем приложении для iPad есть viewcontroller. Он имеет UIPopoverViewController с UITableView внутри. Я хочу, чтобы пользователь мог выбрать строку в tableView, а затем rootViewController отклонит всплывающее окно и выдвинет новый viewController. Заранее спасибо.

Это то, что я пробовал до сих пор:

В классе UITableView:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
WelcomeViewController *welcomeView = [[WelcomeViewController alloc] init];
welcomeView.whichDay = [daysOfTheWeek objectAtIndex:indexPath.row];
[welcomeView pushFromPopOver];

}

Затем в rootViewController:

-(void)pushFromPopOver{
  //PlannerPage *plannerPageViewController = [[[PlannerPage alloc] initWithNibName:@"PlannerPageiPad" bundle:nil] retain];

    [popover dismissPopoverAnimated:YES];
    [popover.delegate popoverControllerDidDismissPopover:popover];
    NSLog(@"%@",whichDay);

    PlannerPage *plannerPageViewController = [[[PlannerPage alloc] initWithNibName:@"PlannerPageiPad" bundle:nil] retain];
    plannerPageViewController.dayOfTheWeekString = whichDay;
    [self.navigationController pushViewController:plannerPageViewController animated:YES];

    //plannerPageViewController.dayOfTheWeekString = @"";
    //[self.navigationController pushViewController:plannerPageViewController animated:YES];
    //[plannerPageViewController release];
  }

NSLog сообщает мне, что было выбрано, но всплывающее окно не отклоняется, и rootViewController не нажимает

Хотя, возможно, я использую делегата, но я не уверен, как. Заранее спасибо.

1 Ответ

0 голосов
/ 11 апреля 2011

Похоже, NSNotificationCenter идеально подходит для того, что вам нужно. Ваш корневой контроллер представления должен прослушивать NSNotification, а ваш поповер должен опубликовать это уведомление.

...