[转]iOS UISCrollView循环滚动 实现

google了半天发现很多人竟然搞不定,甚至还有人用数组左移右移的思想来搞,那个方法我试了,带着PageControl的时候简直搞死人。而且各种复杂,所以自己想了个简单点的实现.

只讲思想。

假如你有5个元素需要循环:

[0, 1, 2, 3, 4]

那么你在将这四个元素添加到UIScrollView里面的时候,就需要多添加两个,变成这样:

[ 4, 0, 1, 2, 3, 4, 0 ]

然后只需要在scrollViewDidEndDecelerating代理方法里判断offset是第一个和最后一个

int offset = sv.contentOffset.x / 320;

当offset == 0或者等于最后一个的时候,你setContentOffset到相应元素即可

例如,当offset==0,setContentOffset到第四个元素即可,记着animated设为NO。

最后实现完了发现思想很简洁,bug很少,实现很简单,难道简单就是美。

你可能感兴趣的:(uiscrollview)