在我的应用程序中,我正在设计一个自定义选择器,允许用户通过水平滚动并触摸来选择项目。当用户向某个方向滚动时,我需要该 View 内的按钮无限循环。当内容在 View 外循环时,解决此功能同时保持 UIScrollView 惯性滚动的最佳方法是什么?
根据我对尝试此操作的其他人的研究,如果在用户抬起手指后以编程方式在滚动中间移动滚动位置,他们将难以维持减速动画。我该如何解决这个限制?
当前具有此功能的应用程序示例是 Apple 的 MobileMe Gallery app 。在界面中,选择图库后,顶部有一个可水平滚动的照片选择器,向一个方向拖动时会无限循环。
非常感谢任何建议。
最佳答案
我编写了一个通用轮播控件,可以轻松处理此类需求,并使用简单的数据源/委托(delegate)模式来提供内容 View :
http://charcoaldesign.co.uk/source/cocoa#icarousel
我最初确实使用了 UIScrollView 作为基础,但这相当有限,所以在最新版本中我只是自己管理加速。
关于iPhone:UIScrollView 内无限循环内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3018929/