Использовать ChildViewControllers в UIScrollview? - PullRequest
4 голосов
/ 30 января 2012

Возможно, что используете childViewControllers в UIScrollview?Я знал, что в ios5 мы можем использовать childViewControllers для управления несколькими представлениями на экране.

Могу ли я использовать childViewControllers для управления каждым представлением в uiscrollview?Я хочу эффект как Windows Phone 7 Panorama, и каждый дочерний контроллер контролирует страницу.И я не знаю, как это сделать.

Еще один вопрос: я пытаюсь этот код, и возникла проблема.

[self addChildViewController: myTableViewController];
[scrollView addSubview:[[self.childViewControllers objectAtIndex:1] view]];

Представление таблицы может отображаться, но когдая касаюсь строки, она не может перейти к подробному виду, методы делегата табличного представления didselected не работали.

кто-то может мне помочь?Большое спасибо.

Ответы [ 2 ]

1 голос
/ 14 февраля 2014

Вот код, который делает это:

- (void)configureInfoViewController
{
    TodayViewController *todayVC = [self.storyboard instantiateViewControllerWithIdentifier:@"today"];
    WeekViewController *weekVC = [self.storyboard instantiateViewControllerWithIdentifier:@"week"];
    MonthViewController *monthVC = [self.storyboard instantiateViewControllerWithIdentifier:@"month"];

    [self addChildViewController:todayVC];
    [self addChildViewController:weekVC];
    [self addChildViewController:monthVC];
}

- (void)configureScrollView
{
    [self.scrollView setDirectionalLockEnabled:YES];
    self.scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * [self.childViewControllers count], scrollView.frame.size.height);
    for (int i = 0; i < [self.childViewControllers count]; i++) {
        CGRect frame = scrollView.frame;
        frame.origin.x = frame.size.width * i;
        frame.origin.y = 0;
        [[[self.childViewControllers objectAtIndex:i] view] setFrame:frame];
        [scrollView addSubview:[[self.childViewControllers objectAtIndex:i] view]];
    }
}
0 голосов
/ 06 декабря 2012

Здесь вы используете добавление дочернего контроллера представления в myTableViewController и пытаетесь получить доступ к childViewController из себя ..?

Попробуйте получить childViewController из myTableViewController не из себя.

...