2013-05-14 2 views
2

У меня есть мнение, что выглядит, как показано ниже:Выделите внешний Scrollview, затем выделите внутренний

  • Внешней UIScrollView
    • UIImageView
    • Внутренний UICollectionView

enter image description here

Я хотел бы, когда пользователь прокручивается, он должен доходить до конца внешнего прокрутки и запускать прокрутку внутреннего прокрутки, и наоборот (когда пользователь прокручивается вверх, он достигает вершины внутреннего прокрутки и затем начинает прокрутку внешний вид).

Все это должно быть гладким. Сглаживая, я имею в виду, что пользователь может начать замедляться из внешнего scrollview, а затем замедление перемещается внутри innerview.

Надеюсь, я был ясен, так как объяснить это не так-то просто. Прошу прощения, если такой вопрос уже существует, но я не мог найти то же самое. Я был бы признателен за ссылку и/или пример.

Заранее спасибо за помощь :)

EDIT: Я не хотел бы делать это с одной точки зрения сбора с учетом заголовка, содержащего изображение, по причинам, не упомянутые здесь. Поэтому я не хотел бы использовать какой-либо подход, который использует ячейку заголовка.

+0

Есть ли причина, по которой вы не можете использовать заголовок? Каков эффект, который вы пытаетесь достичь? Может быть, это можно сделать проще. – Fogmeister

+0

Я хотел бы сделать что-то вроде вкладки Профиль Instagram. Пользователь должен иметь возможность переключаться между несколькими видами коллекции, пока изображение остается. Кроме того, каждый просмотр коллекции имеет свой собственный контроллер представления коллекции и собственный макет. – Martin

+0

К сожалению, эти ответы, похоже, не решают вашу проблему, и у меня есть ТОЧНО тот же вопрос. Какой-либо прогресс? – tuddy

ответ

0

На вашем изображении это похоже на то, что у вас есть UICollectionView с видом заголовка раздела.

Он не требует каких-либо специальных видов прокрутки или чего-то еще. Изображение вверху - это только заголовок раздела представления коллекции.

+0

Я отредактировал свой вопрос. – Martin

1

Дайте внешнему scrollView значение contentSize, что совпадает с размером вашего изображения и содержимым содержимого коллекции.

Запретная прокрутка по коллекцииView.

Реализуйте внешний метод Scrollview в Делегатых scrollViewDidScroll обновить:

  • изображения преобразуют (так что у вас есть иллюзия, что он остается до сих пор)
  • коллекции просмотра преобразуют (то же самое)
  • коллекцию view'sOffset (так что у вас есть иллюзия, которую вы прокрутили, а не внешний scrollView).

Довольно сложно это объяснить, особенно я спешу, но это возможно, и это именно то, как я это сделал несколько месяцев назад в приложении, которое сейчас работает.

Это фактически означает «перенос» инерции от внешнего вида прокрутки к внутреннему коллективу, который, как я думаю, вам нужен.

Смежные вопросы