标签:结果 类型 计算 自动 elf tor 方法 pre view
第一种:
CGFloat pageWidth = self.scrollView.frame.size.width;
int page = floor((self.scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
举个例子吧
一页的width为320
用方法1的结果
情况1:
contentoffset小于320+160,即在第二页的左半部分,(self.scrollView.contentOffset.x - pageWidth / 2) / pageWidth的结果是0.xxxx,floor结果为0,计算结果为1,即会回到第一页
情况2:
contentoffset大于320+160,即在第二页的右半部分,(self.scrollView.contentOffset.x - pageWidth / 2) / pageWidth的结果是1.xxxx,floor结果为1,page计算结果为2,即会进入第二页
第二种
self.scrollView.contentOffset.x/pageWidth
用方法2的结果
self.scrollView.contentOffset.x/pageWidth计算结果都为1.xxx
而page是int类型,系统根据四舍五入自动强制转型
ios 根据scrollview滑动的偏移计算滑动到第几页算法(不同需求不同计算)
标签:结果 类型 计算 自动 elf tor 方法 pre view
原文地址:http://www.cnblogs.com/sunfuyou/p/7769140.html