我有一个UIScrollView
和另一个UIScrollView
里面。它们都水平滚动并具有pagingEnabled = YES
. 假设我开始滚动内部滚动视图并到达最右边的边界。如果我继续在其中滚动,则外部 scrollView 开始移动。我需要避免这种情况。内视图应以橡皮筋效果跳跃,外视图应保持原位。
希望它很清楚,但这里有一个草图:
我试过这样设置outerView.scrollEnabled = NO;
:
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
outerView.scrollEnabled = NO;
}
,如果只在innerView中滚动,它完全符合我的需要。OuterView 不再滚动。但是scrollEnabled
如果我想再次滚动outerView,我必须在某个地方设置回YES。我试过在这里做:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
outerView.scrollEnabled = YES;
}
,但我遇到了同样的问题:在到达 innerView 的最右边边界后,outerView 滚动而不是 innerView 跳转,并带有橡皮筋效果。
任何建议如何解决问题?