iOS ScrollView无限循环效果实现
ScrollView 的无限循环效果,挺适合做图片轮播或者卡片浏览的。关键在于怎么让用户滚到头也能无缝继续滑——看着就像没尽头一样。
ScrollView 的无限循环效果,挺适合做图片轮播或者卡片浏览的。关键在于怎么让用户滚到头也能无缝继续滑——看着就像没尽头一样。
逻辑其实不复杂,先准备好至少三条数据,不然滑起来太突兀。搞三个子视图,一个左边,一个中间,一个右边,组成基础结构。滑动时动态更新内容,就能模拟出无限效果了。
视图复用也别忘了,类似 UITableView 的 cell 重用思路。滑出屏幕后,数据一换,再丢到另一端继续用,性能会好多。
ScrollView 的滚动监听是重点,滚到边界要马上调整位置,不然用户能感觉出“穿帮”了。动画也别拉垮,frame 算得准,滑起来才流畅。
你还可以加个自动滚动,定时调用 scrollRectToVisible:animated:
,一顿操作之后就能做成那种自动轮播图,挺有用。
,用户要是手动滑了,记得暂停自动滚动,等松手了再播。交互体验这一块别忽略。
适配方面,屏幕宽高、方向变化都得好,尤其是在横竖屏切换的时候。懒得自己写?SDCycleScrollView 和 iCarousel 都是不错的轮子,省时又省力。
如果你刚好在做类似的图片轮播或者资讯卡片滑动,不妨试试这种思路。代码结构简单,还挺实用。
380.77KB
文件大小:
评论区