Невозможно добавить пользовательский контроллер представления в UIScrollVIew - PullRequest
0 голосов
/ 12 февраля 2012

Я пытаюсь создать приложение, которое использует UIScrollView для перехода между неопределенным числом динамически генерируемых пользовательских контроллеров представления. К сожалению, когда я пробую код, показанный ниже, я получаю только пустой экран. Кроме того, оператор nslog, который я поместил сразу после добавления подпредставления, предположительно добавленного в UIScrollView, всегда говорит о том, что UIScrollView имеет нулевые подпредставления. Я полностью сбит с толку этой проблемой и был бы очень признателен за любую помощь.

- (void)loadView 
{
   [super loadView];

   scrollView.pagingEnabled = YES;

   viewControllers = [[NSMutableArray alloc] init];

   CGRect screenBounds = [[UIScreen mainScreen] bounds];
   CGFloat screenScale = [[UIScreen mainScreen] scale];

   CGFloat width = screenBounds.size.width * screenScale;
   CGFloat height = screenBounds.size.height * screenScale;

   scrollView.contentSize = CGSizeMake(width * [routes count], height);

    for( int i = 0; i < [arrayWithDataForViewControllers count]; i++)
    {
       ViewController *controller = [[ViewController alloc] init];

       controller.view.frame = CGRectMake(width*i, 20, width, height);

        [scrollView addSubview:controller.view];
         NSLog(@"SUBVIEWS %d", [[scrollView subviews] count]);
         [viewControllers addObject:controller];
    }   
}

1 Ответ

0 голосов
/ 12 февраля 2012

Проверьте представление вашего ViewController за пределами scrollview - есть вероятность, что его свойство view равно nil.

...