Я помню, что в одном из видеороликов WWDC 2011, посвященном просмотру прокрутки, была демонстрация, в которой ведущая (Элиза) продемонстрировала, как бесконечно прокручивать прокрутку просмотра. В демонстрации использовалась куча предварительно сгенерированных домов и луна.
Вот ссылка на слайды, но я не вижу демоверсию домов или соответствующий код.
http://adcdownload.apple.com//wwdc_2011/adc_on_itunes__wwdc11_sessions__pdf/104_advanced_scroll_view_techniques.pdf
вот код, который у них есть, но это не демонстрация с домами и луной:
http://developer.apple.com/library/ios/samplecode/StreetScroller/Introduction/Intro.html
В этой демонстрации меня интересует то, как Элиза смогла поднять луну длинным нажатием и расположить ее в любом месте на UIScrollView. Я хотел бы добавить похожую технику в свое приложение.
Я проверил исходный код для продвинутых методов прокрутки, и у него нет этого примера.
Может кто-нибудь помочь мне узнать, как подобрать UIControl, перетащить и расположить его в любом месте в представлении хостинга, используя longpress?
Обновление:
Я нашел этот код:
[button addTarget:self action:@selector(draggedOut:withEvent: ) forControlEvents: UIControlEventTouchDragOutside | UIControlEventTouchDragInside];
- (void) draggedOut: (UIControl *) c withEvent: (UIEvent *) ev {
c.center = [[[ev allTouches] anyObject] locationInView:self.markerView];
}
Это поднимает и позиционирует кнопку, однако кнопка также активируется в результате касания. Событие перетаскивания начинается почти сразу, хотя я хотел бы иметь по крайней мере секунду задержки и эффект масштабирования, чтобы показать, что кнопка была выбрана.
Любая помощь приветствуется!