cha*_*yWu 0 cocoa-touch objective-c uiscrollview ios
我使用UIScrollView来显示大量图像.对于内存问题,我一次只加载三个图像.当用户轻弹到下一个(或前一个)时,我将移动两个图像并加载一个新图像.
首先,我使用scrollViewDidEndDecelerating方法来确定UIScrollView是否更改为下一页,上一页或仍然是当前.但是当你快速连续地轻弹时,scrollViewDidEndDecelerating methord将不会收到任何消息,这意味着不会被调用,而scrollViewDidEndDragging:willDecelerate仍然会收到消息.因为拖动很快,以前的减速被忽略.
因此,我想知道在快速浏览时,我在哪里可以知道视图是否会发生变化以及如何判断变化?在scrollViewDidEndDragging中:willDecelerate methord还是其他一些方法?
我不会依赖这个scrollViewDidEndDecelerating方法,但是scrollViewDidScroll当前一个/下一个页面的50%以上可见时,它将实现 协议并更新页面:
CGFloat pageWidth = self.scrollView.bounds.size.width;
int page = floor((self.scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
self.pageControl.currentPage = page;
Run Code Online (Sandbox Code Playgroud)
编辑
网页控制与滚动视图结合起来,这是很好的解释啧啧
| 归档时间: |
|
| 查看次数: |
3971 次 |
| 最近记录: |