У меня проблема с UIScrollView. Я установил его frame.size, contentSize (больше кадра), но я все еще не могу прокручивать. Моя программа sctucrure так: MainMenuViewController -> ScrollBarController -> UIScrollViewUIScrollView не прокручивает
Это часть метода 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
из класса ScrollBarController:
- (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.
Я проверил методы - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
в обоих контроллерах - MainMenuController и ScrollBarController. Этот метод запускает только основной контроллер. ScrollBarController никогда не получает событий касаний ... возможно, это проблема ...
Есть ли у кого-нибудь идеи, что может быть неправильным? Ура!
Я уже пробовал это. Попробовал снова после вашей рекомендации. Я имею то же самое - вид прокрутки и макет субвью отлично, но прокрутка не прокручивается. Какие методы вам нужны, чтобы иметь лучшую картину? Я просто подумал, что этих методов достаточно. Другие методы больше для вычисления фреймов для представлений 'UIImageView' и добавления их в представление прокрутки. – OgreSwamp