我已阅读适用于iOS的Apple Scroll View编程指南,但仍对以下部分感到困惑:
滚动到特定偏移
滚动到特定的左上角位置(contentOffset属性) 可以通过两种方式完成。 setContentOffset:animated:方法 将内容滚动到指定的内容偏移量。如果是动画的 参数为YES,滚动将从当前位置生成动画 以恒定的速率到达指定的位置。如果是动画的 参数为NO,滚动是立即的,没有动画 地点。在这两种情况下,委托都会发送一个scrollViewDidScroll: 信息。如果禁用动画,或者您设置了内容偏移量 直接设置contentOffset属性,委托收到一个 单个scrollViewDidScroll:消息。如果启用了动画,那么 delegate收到一系列scrollViewDidScroll:消息作为 动画正在进行中。动画完成后,代表 收到scrollViewDidEndScrollingAnimation:message。
使矩形可见
也可以滚动矩形区域 可见。当应用程序需要时,这尤其有用 显示当前在可见区域之外的控件 可见的视图。 scrollRectToVisible:animated:方法滚动 指定的矩形,以便它只在滚动视图中可见。 如果动画参数为YES,则矩形将滚动到视图中 以恒定的速度。与setContentOffset:animated:一样,如果是动画 禁用,委托发送单个scrollViewDidScroll: 信息。如果启用了动画,则会向委托发送一系列动画 scrollViewDidScroll:动画进展时的消息。如果是 scrollRectToVisible:animated:滚动视图的跟踪和拖动 属性也是NO。
如果为scrollRectToVisible启用了动画:动画:,则 delegate收到scrollViewDidEndScrollingAnimation:消息, 提供滚动视图已到达的通知 指定的位置和动画已完成。
我认为setContentOffset:animated和scrollRectToVisible之间非常相似:动画,有人可以给出一些关于它们的提示吗?
而scrollRectToVisible:animated:类似于scrollViewDidEndDecelerating:animated :.
答案 0 :(得分:14)
简短回答:
setContentOffset:动画保留缩放比例。
scrollRectToVisible:动画可能会改变它。