[UIScrollViewDelegate]简介

The methods declared by the UIScrollViewDelegate protocol allow the adopting delegate to respond to messages from the UIScrollView class and thus respond to, and in some affect, operations such as scrolling, zooming, deceleration of scrolled content, and scrolling animations.

通过UIScrollViewDelegate协议声明的方法允许采用的代表来响应来自UIScrollView类的信息,因此在某些情况下,响应像滚动,缩放,滚动内容的减速和滚动的动画等操作。

Responding to Scrolling and Dragging

  • Tells the delegate when the user scrolls the content view within the receiver.

    当用户滚动接收器内的内容视图时通知delegate。

    Declaration

    SWIFT

    optional func scrollViewDidScroll(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object in which the scrolling occurred.

    滚动发生的滚动视图对象。

    Discussion

    The delegate typically implements this method to obtain the change in content offset from scrollView and draw the affected portion of the content view. 

    delegate典型实现这个方法从scrollView获取内容边际的变化和现实内容视图受影响的部分。

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate when the scroll view is about to start scrolling the content.

    Declaration

    SWIFT

    optional func scrollViewWillBeginDragging(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object that is about to scroll the content view.

    Discussion

    The delegate might not receive this message until dragging has occurred over a small distance.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate when the user finishes scrolling the content.

    Declaration

    SWIFT

    optional func scrollViewWillEndDragging(scrollViewUIScrollView,
                               withVelocity velocityCGPoint,
                        targetContentOffset targetContentOffsetUnsafeMutablePointer<CGPoint>)

    OBJECTIVE-C

    - (void)scrollViewWillEndDragging:(UIScrollView *)scrollView
                         withVelocity:(CGPoint)velocity
                  targetContentOffset:(inout CGPoint *)targetContentOffset

    Parameters

    scrollView

    The scroll-view object where the user ended the touch..

    velocity

    The velocity of the scroll view (in points) at the moment the touch was released.

    targetContentOffset

    The expected offset when the scrolling action decelerates to a stop.

    Discussion

    This method is not called when the value of the scroll view’s pagingEnabled property is YES. Your application can change the value of the targetContentOffset parameter to adjust where the scrollview finishes its scrolling animation.

    Import Statement

    import UIKit

    Availability

    Available in iOS 5.0 and later.

  • Tells the delegate when dragging ended in the scroll view.

    Declaration

    SWIFT

    optional func scrollViewDidEndDragging(scrollViewUIScrollView,
                            willDecelerate decelerateBool)

    OBJECTIVE-C

    - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView
                      willDecelerate:(BOOL)decelerate

    Parameters

    scrollView

    The scroll-view object that finished scrolling the content view.

    decelerate

    YES if the scrolling movement will continue, but decelerate, after a touch-up gesture during a dragging operation. If the value is NO, scrolling stops immediately upon touch-up.

    Discussion

    The scroll view sends this message when the user’s finger touches up after dragging content. The decelerating property of UIScrollView controls deceleration.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Asks the delegate if the scroll view should scroll to the top of the content.

    Declaration

    SWIFT

    optional func scrollViewShouldScrollToTop(scrollViewUIScrollView) -> Bool

    OBJECTIVE-C

    - (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object requesting this information.

    Return Value

    YES to permit scrolling to the top of the content, NO to disallow it.

    Discussion

    If the delegate doesn’t implement this method, YES is assumed. For the scroll-to-top gesture (a tap on the status bar) to be effective, the scrollsToTop property of the UIScrollView must be set to YES. 

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate that the scroll view scrolled to the top of the content.

    Declaration

    SWIFT

    optional func scrollViewDidScrollToTop(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object that perform the scrolling operation.

    Discussion

    The scroll view sends this message when it finishes scrolling to the top of the content. It might call it immediately if the top of the content is already shown. For the scroll-to-top gesture (a tap on the status bar) to be effective, the scrollsToTop property of the UIScrollView must be set to YES.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate that the scroll view is starting to decelerate the scrolling movement.

    Declaration

    SWIFT

    optional func scrollViewWillBeginDecelerating(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object that is decelerating the scrolling of the content view.

    Discussion

    The scroll view calls this method as the user’s finger touches up as it is moving during a scrolling operation; the scroll view will continue to move a short distance afterwards. The decelerating property of UIScrollView controls deceleration.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate that the scroll view has ended decelerating the scrolling movement.

    Declaration

    SWIFT

    optional func scrollViewDidEndDecelerating(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object that is decelerating the scrolling of the content view.

    Discussion

    The scroll view calls this method when the scrolling movement comes to a halt. The decelerating property of UIScrollView controls deceleration.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  •  

     

     

     

Managing Zooming

  • Asks the delegate for the view to scale when zooming is about to occur in the scroll view.

    Declaration

    SWIFT

    optional func viewForZoomingInScrollView(scrollViewUIScrollView) -> UIView?

    OBJECTIVE-C

    - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object displaying the content view.

    Return Value

    UIView object that will be scaled as a result of the zooming gesture. Return nil if you don’t want zooming to occur.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate that zooming of the content in the scroll view is about to commence.

    Declaration

    SWIFT

    optional func scrollViewWillBeginZooming(scrollViewUIScrollView,
                                    withView viewUIView!)

    OBJECTIVE-C

    - (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView
                              withView:(UIView *)view

    Parameters

    scrollView

    The scroll-view object displaying the content view.

    view

    The view object whose content is about to be zoomed.

    Discussion

    This method is called at the beginning of zoom gestures and in cases where a change in zoom level is to be animated. You can use this method to store state information or perform any additional actions prior to zooming the view’s content.

    Import Statement

    import UIKit

    Availability

    Available in iOS 3.2 and later.

  • Tells the delegate when zooming of the content in the scroll view completed.

    Declaration

    SWIFT

    optional func scrollViewDidEndZooming(scrollViewUIScrollView,
                                 withView viewUIView!,
                                  atScale scaleCGFloat)

    OBJECTIVE-C

    - (void)scrollViewDidEndZooming:(UIScrollView *)scrollView
                           withView:(UIView *)view
                            atScale:(CGFloat)scale

    Parameters

    scrollView

    The scroll-view object displaying the content view.

    view

    The view object representing that part of the content view that needs to be scaled.

    scale

    The scale factor to use for scaling; this value must be between the limits established by the UIScrollViewproperties maximumZoomScale and minimumZoomScale.

    Discussion

    The scroll view also calls this method after any “bounce” animations. It also calls this method after animated changes to the zoom level and after a zoom-related gesture ends (regardless of whether the gesture resulted in a change to the zoom level).

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

  • Tells the delegate that the scroll view’s zoom factor changed.

    Declaration

    SWIFT

    optional func scrollViewDidZoom(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewDidZoom:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object whose zoom factor changed.

    Import Statement

    import UIKit

    Availability

    Available in iOS 3.2 and later.

  •  

     

     

     

Responding to Scrolling Animations

  • Tells the delegate when a scrolling animation in the scroll view concludes.

    Declaration

    SWIFT

    optional func scrollViewDidEndScrollingAnimation(scrollViewUIScrollView)

    OBJECTIVE-C

    - (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView

    Parameters

    scrollView

    The scroll-view object that is performing the scrolling animation.

    Discussion

    The scroll view calls this method at the end of its implementations of the setContentOffset:animated: and scrollRectToVisible:animated: methods, but only if animations are requested.

    Import Statement

    import UIKit

    Availability

    Available in iOS 2.0 and later.

posted @ 2015-02-07 23:41  baaingSheep  阅读(554)  评论(0编辑  收藏  举报