Добавление вертикальной прокрутки для IKImageBrowserView, который создается программно
Я хотел бы создать библиотеку какао Test.dylib, которая обеспечивает представление значков с помощью IKImageBrowserView. Я не могу создать IKImageBrowserView в nib, так как dylib не поддерживает ресурсы. Итак, я создаю IKImageBrowserView программно следующим образом:
IKImageBrowserView *browser = [[IKImageBrowserView alloc]initWithFrame:[self bounds]];
Datasource *ds = [[dataSource alloc]init];
[browser setDataSource:ds];
[browser setDelegate:ds];
Но когда элементов больше, чем в видимой области, должны отображаться вертикальные скроллеры, чего не происходит.
Как я поддерживаю прокрутку для IKImageBrowserView, который создается программно?
Я пробовал следующее без положительных результатов:
NSScrollView *scroller = [[NSScrollView alloc]initWithFrame:[self bounds]];
[scroller addSubview:browser];
Как мне это решить? Заранее спасибо.
С уважением, Дипа
1 ответ
Вы на правильном пути, пытаясь разместить IKImageBrowserView внутри NSScrollView. Однако вместо использования addSubview (унаследованного от NSView) используйте setDocumentView…
NSScrollView *scroller = [[NSScrollView alloc]initWithFrame:[self bounds]];
[scroller setDocumentView:browser];
[scroller setHasVerticalScroller:YES];
Руководство по программированию Scroll View содержит некоторую полезную информацию…
Экземпляры NSScrollView предоставляют сервисы прокрутки к представлению своего документа. Это единственное представление, которое приложение должно предоставлять в виде прокрутки. Представление документа отвечает за создание и управление контентом, прокручиваемым представлением прокрутки.