У меня проблема с UIScrollView.Я установил его frame.size, contentSize (больше, чем frame), но все еще не могу прокрутить.Моя программа имеет такую структуру: MainMenuViewController -> ScrollBarController -> UIScrollView
Это часть метода MainMenuViewController viewDidLoad
ScrollBarController *imgScrollBarCtrl = [[ScrollBarController alloc] init];
// set images folder
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *imagesFolder = [documentsDirectory stringByAppendingPathComponent:@"SavedImages"];
// set scroll bar frame size
imgScrollBarCtrl.view.frame = CGRectMake(0.0, 0.0, 1024.0, 128.0);
[imgScrollBarCtrl setImagesFolder:imagesFolder];
// method adds subviews UIImageView to the scroll bar
// and set view's contentSize according thumbnails number
[imgScrollBarCtrl recalculateThumbnailsBounds];
[topPanel addSubview:imgScrollBarCtrl.view];
[imgScrollBarCtrl release];
Существует метод loadView
из класса ScrollBarControl:
- (void)loadView {
UIScrollView *aScrollView = [[UIScrollView alloc] init];
aScrollView.scrollEnabled = YES;
self.view = aScrollView;
[aScrollView release];
}
Я устанавливаю contentSize моего scrollView в recalculateThumbnailsBounds
ScrollBarController.Он был установлен правильно (1620.0, 128.0), но прокрутка не работает.Я попытался установить contentSize в MenuViewController, добавив: ((UIScrollView *)imgScrollBarCtrl.view).contentSize(2000.0, 128.0);
, но это не работает так же хорошо.
Я делаю NSLog(...)
после установки contentSize и печати размера фрейма и contentSize для консоли - они установлены правильно freme.size = 1028.0,128.0, contentSize = 1620.0,128.0.
I 'Мы проверили методы - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
в обоих контроллерах - MainMenuController и ScrollBarController.Только главный контроллер запускает этот метод.ScrollBarController никогда не получает события касания ... возможно, это проблема ...
У кого-нибудь есть идеи, что может быть не так?Ура!