UIScrollView API 翻譯

征途LN發表於2013-12-28

@property(nonatomic)        CGPoint                      contentOffset;                 // 距離origin的偏移

@property(nonatomic)        CGSize                       contentSize;                   // 顯示區域大小

@property(nonatomic)        UIEdgeInsets                 contentInset;                  // 顯示區域距離四個邊界的距離

@property(nonatomic,assign)id<UIScrollViewDelegate>      delegate;                      // default nil. weak reference

@property(nonatomic,getter=isDirectionalLockEnabled)BOOL directionalLockEnabled;        // 是否鎖定某個方向上的移動

@property(nonatomic)        BOOL                         bounces;                       // 移動到邊界是否有反彈效果

@property(nonatomic)        BOOL                         alwaysBounceVertical;          // 只在豎直方向上有反彈效果

@property(nonatomic)        BOOL                         alwaysBounceHorizontal;        // 只在水平方向上有反彈效果

@property(nonatomic,getter=isPagingEnabled)BOOL          pagingEnabled;                  // 每次移動到一個子檢視的邊界

@property(nonatomic,getter=isScrollEnabled)BOOL          scrollEnabled;                  //是否能拖動

@property(nonatomic)        BOOL                         showsHorizontalScrollIndicator;// 顯示水平方向上的指示器

@property(nonatomic)        BOOL                         showsVerticalScrollIndicator;  // 顯示豎直方向上的指示器

@property(nonatomic)        UIEdgeInsets                 scrollIndicatorInsets;         // contentSize 距離資格邊界的距離

@property(nonatomic)        UIScrollViewIndicatorStyle   indicatorStyle;                // 指示器的樣式

@property(nonatomic)        CGFloat                      decelerationRate//減速的速錄


- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated; // 設定contentSize的偏移

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated;        //載入scrollView時顯示的區域


- (void)flashScrollIndicators;            // 剛載入scrollView時,顯示指示器一會




@property(nonatomic,readonly,getter=isTracking)     BOOL tracking;       // 點選但未移動時為YES

@property(nonatomic,readonly,getter=isDragging)     BOOL dragging;       // 接觸螢幕並且移動中為YES

@property(nonatomic,readonly,getter=isDecelerating)BOOL decelerating;   // 當手指離開介面開始到檢視停止移動之前為YES


@property(nonatomic)BOOL delaysContentTouches;      //對檢視的點選是否有延遲,預設為YES,如果為NO,則,使用者剛點選就會觸發touches:begin 事件

@property(nonatomic)BOOL canCancelContentTouches;   // 預設為YES,如果為NO,檢視不能移動


這個方法是由子類繼承來定製手指接觸子檢視的操作

- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view;



在滑動檢視操作時,手指在接觸子檢視並且在移動之前,子檢視不響應這個事件

- (BOOL)touchesShouldCancelInContentView:(UIView *)view;




@property(nonatomic)CGFloat minimumZoomScale;    // 最小的縮小比例

@property(nonatomic)CGFloat maximumZoomScale;    // 最大的放大比例


@property(nonatomic)CGFloat zoomScaleNS_AVAILABLE_IOS(3_0);           // 返回縮放期間scrollview的縮放比例

- (void)setZoomScale:(CGFloat)scale animated:(BOOL)animatedNS_AVAILABLE_IOS(3_0);設定縮放比例


- (void)zoomToRect:(CGRect)rect animated:(BOOL)animatedNS_AVAILABLE_IOS(3_0);是指縮放到指定區域


@property(nonatomic)BOOL  bouncesZoom;         // 縮放在超過最大比例或最小比例時是否有反彈


@property(nonatomic,readonly,getter=isZooming)       BOOL zooming;      // 如果此時使用者正在使用縮放手勢,為YES

@property(nonatomic,readonly,getter=isZoomBouncing) BOOL zoomBouncing; //在檢視超過最大縮放比例(小於最小比例)回到最大比例(最小比例)時為YES



@property(nonatomic)BOOL  scrollsToTop;         // 檢視是否已經在最頂端.


@property(nonatomic,readonly)UIPanGestureRecognizer *panGestureRecognizer得到拖拽的手勢指標

// `pinchGestureRecognizer` will return nil when zooming is disabled.

@property(nonatomic,readonly)UIPinchGestureRecognizer *pinchGestureRecognizer得到捏合的手勢指標


@property(nonatomic)UIScrollViewKeyboardDismissMode keyboardDismissModeNS_AVAILABLE_IOS(7_0); 這個是新增加的API,為鍵盤的消失提供了新方法,當然需要鍵盤的檢視必須是UIScrollView或者其子類的子檢視

/*

typedef NS_ENUM(NSInteger, UIScrollViewKeyboardDismissMode) {

    UIScrollViewKeyboardDismissModeNone,

    UIScrollViewKeyboardDismissModeOnDrag,      // 有拖動鍵盤就消失

    UIScrollViewKeyboardDismissModeInteractive, //鍵盤隨著檢視的拖動而移動

} NS_ENUM_AVAILABLE_IOS(7_0);


*/


@end


@protocol UIScrollViewDelegate<NSObject>


@optional


- (void)scrollViewDidScroll:(UIScrollView *)scrollView;                                              // contentOffset有變化就觸發

- (void)scrollViewDidZoom:(UIScrollView *)scrollViewNS_AVAILABLE_IOS(3_2);//有縮放就觸發



- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView;//手指結束檢視並且檢視開始移動就觸發


- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inoutCGPoint *)targetContentOffset NS_AVAILABLE_IOS(5_0);//手指滑動剛離開scrollview時


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


- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView;  //檢視開始減速時

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView;     // called when scroll view grinds to a halt


- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView; //移動或者縮放動畫結束時


- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView;     // 返回隨著scrollview一起縮放的檢視

- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)viewNS_AVAILABLE_IOS(3_2);// 在縮放即將開始前呼叫

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(CGFloat)scale;// 縮放結束時


- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView;   // 是否支援快速回到檢視頂端

- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView;      //當時圖回到頂端時呼叫


相關文章