【问题标题】:Change the 'Gravity' on a UIScrollView with Paging使用分页更改 UIScrollView 上的“重力”
【发布时间】:2011-02-11 22:16:53
【问题描述】:

在启用分页的情况下滚动UIScrollView 时是否可以更改“重力”(停止速度)?我已经实现了一个horizontalUIScrollView,它的作用类似于UIPickerView。我希望能够根据轻弹速度滚动浏览许多项目。谢谢!

【问题讨论】:

    标签: iphone objective-c cocoa-touch xcode


    【解决方案1】:

    不幸的是,您没有可以更改的简单属性来实现此目的,但您可以使用滚动视图委托方法来滚动您自己的(这有点复杂,但可以实现 - 我已将表格视图修改为“对齐”到行时滚动结束)。

    实际上,您必须编写自己的分页实现代码。

    【讨论】:

    • @Ixt 您将使用哪些委托方法来执行此操作?是否可以在滚动视图滚动速度达到某个点时收到通知?我看到的唯一可用代表是scrollViewWillBeginDeceleratingscrollViewDidEndDecelerating(第一个为时过早,最后一个为时已晚)。谢谢!
    • 您还有scrollViewDidScroll,尽管名称有点误导,但会被连续调用,还有scrollViewDidEndDragging:willDecelerate。您可以使用这些(以及您已经提到的方法)来计算滚动的速度,以及手指何时从屏幕上抬起。这将让您“翻页”到最近的项目,但仍然让用户非常快速地浏览项目(而不是一次一个)。编写代码不是世界上最简单的事情,但绝对可以实现。
    • @Ixt 谢谢,这听起来对我来说太复杂了,所以我可能需要寻找解决方法。欣赏答案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-09
    • 2011-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多