ind*_*ess 5 iphone paging uiscrollview
我将UIScrollView与pagingEnabled设置为YES,并以编程方式将其内容滚动到底部:
CGPoint contentOffset = scrollView.contentOffset;
contentOffset.y = scrollView.contentSize.height - scrollView.frame.size.height;
[scrollView setContentOffset:contentOffset animated:YES];
Run Code Online (Sandbox Code Playgroud)
它成功滚动,但在此之后,单击它的内容会向上滚动,以便在它向下滚动之前进行偏移.只有在我将scrollView的内容滚动到底部然后点击时才会发生这种情况.当我滚动到任何其他偏移然后点击时,没有任何事情发生.
这绝对不是我想要的.应如何解决?
非常感谢提前!
帖木儿.
这个小小的黑客可以防止UIScrollView在点击时滚动.当滚动视图启用了分页时,看起来会发生这种情况.
在您的UIScrollView委托中添加以下方法:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
scrollView.pagingEnabled = self.scrollView.contentOffset.x < (self.scrollView.contentSize.width - self.scrollView.frame.size.width);
}
Run Code Online (Sandbox Code Playgroud)
当滚动视图在水平滚动中到达右端时,这将禁用分页(我的用例,您可以轻松地将其调整到其他方向).
小智 5
我刚刚弄清楚是什么导致了这个问题,以及如何避免它。如果在滚动视图上将 pagingEnabled 设置为 YES,则必须将 contentOffset 设置为滚动视图可见大小的倍数(即您应该在分页边界上)。
具体例子:
如果您的滚动视图(例如)高 460 像素,内容区域为 920,如果您想避免“滚动到点击开始”问题,则需要将内容偏移设置为 0 或 460。
作为奖励,最终结果可能看起来更好,因为您的滚动视图将与分页边界对齐。:)
| 归档时间: |
|
| 查看次数: |
5183 次 |
| 最近记录: |