У меня есть контроллер основного вида, содержащий UIScrollView
, называемый containerScrollView. Это scrollview имеет на каждой странице другое scrollview с размером экрана, содержащего два контроллера вида: MessagesViewController
и InfoViewController
. Вот схема.Просмотр Просмотр контроллеров только один раз добавляется
personScrollView в containerScrollView работает нормально, но проблема заключается в добавлении зрения двух зрения диспетчеров к personScrollView.
@property (nonatomic, retain) MessagesViewController *matchesVC;
@property (nonatomic, retain) InfoViewController *standingsVC;
for (int i = 0; i < 3; i++) {
UIScrollView *personScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(i*320, 0, 320, self.containerScrollView.frame.size.height)];
NSArray *colors = @[[UIColor blueColor], [UIColor orangeColor], [UIColor greenColor]];
[personScrollView setBackgroundColor:[y objectAtIndex:i]];
[personScrollView setPagingEnabled:YES];
[personScrollView setContentSize:CGSizeMake(self.view.frame.size.width * 2, personScrollView)];
[self.containerScrollView addSubview:personScrollView];
/* Populate the scrollview */
// Messages
if (self.messagesVC == nil)
{
self.messagesVC = [[MessagesViewController alloc] init];
[self.messagesVC setFrame:CGRectMake(0, 0, 320, self.containerScrollView.frame.size.height)];
}
[personScrollView addSubview:self.messagesVC.view];
// Info
if (self.infoVC == nil)
{
self.infoVC = [[InfoViewController alloc] init];
[self.infoVC setFrame:CGRectMake(320, 0, 320, self.containerScrollView.frame.size.height)];
}
[personScrollView addSubview:self.infoVC.view];
}
[self.containerScrollView setContentSize:CGSizeMake(320*3, self.containerScrollView.frame.size.height)];
Проблема заключается в том, что два просматривать контроллеры (сообщения и данные) только добавляются один раз, и до последнего personScrollView из containerScrollView.
Как получить контроллеры просмотра, добавленные ко всем моим персонамScrollViews? Что-то не так с объявлением свойства?
Я прочитал что-то об этом злоупотреблении диспетчерами представлений, но это единственное решение. В двух контроллерах представления действительно много кода, и я не могу добавить его в свой rootviewcontroller.
Неверно. Я просто хочу контролировать представления в scrollview с помощью другого контроллера представления, чтобы мой код был организован, и я пытаюсь это сделать. – yoeriboven