2014-12-06 4 views
1

У меня есть scrollView, а внутри scrollview содержится collectionView.UIScrollView с дочерним элементом UICollectionView

С одним проводом, я хотел бы прокрутить внешний scrollView до тех пор, пока внутренний scrollView не войдет в рамку, а затем остановит внешний свиток и прокрутит внутреннюю (все это одним ударом). Итак, в основном я хочу передать прокрутку с внешнего на внутренний на лету.

Я могу добиться этого эффекта, однако я должен удалить мой палец, а затем нажмите палец вниз снова и прокручивать другой вид:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
//general scroll info 
CGFloat scrollOffset = scrollView.contentOffset.y; 

//if the scrollview reaches the top then pass the touch to my collection view 
//however i must remove my finger and press again in order to scroll the collectionview 
if (scrollView == _scrollView && scrollOffset >= 120){ 
    [_scrollView setScrollEnabled:NO]; 
    [_scrollView setBounces:NO]; 

    [_collectionView setScrollEnabled:YES]; 
    [_collectionView setBounces:YES]; 

    [self.scrollView setContentOffset:CGPointMake(0, 120) animated:YES]; 
}else if (scrollView != _scrollView && scrollOffset < 0){ 
    [_scrollView setScrollEnabled:YES]; 
    [_scrollView setBounces:YES]; 

    [_collectionView setScrollEnabled:NO]; 
    [_collectionView setBounces:NO]; 
    [self.collectionView setContentOffset:CGPointMake(0, 0) animated:YES]; 
} 

} 

Я хотел бы быть в состоянии сделать это без необходимости удалите мой палец.

Любые мысли?

+0

UICollectionView - это вид прокрутки, почему вам нужна эта проблема с внешним видом прокрутки? – Andy

+0

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

ответ

0

Я смог решить эту проблему, создав большой родительский UIScrollView размер экрана. Внутри этого scrollview у меня был UICollectionView и мое изображение внутри другого UIScrollView (для эффекта параллакса).

Так это выглядит следующим образом:

  • Scrollview (размер экрана)
    • ScrollView
      • ImageView
    • CollectionView

Как только я добрался до верхней части экрана с помощью моей коллекцииView, я изменил смещение содержимого в коллекции на основе прокрутки родительского прокрутки.

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