ScrollView分析

Properties 

alwaysBounceHorizontal        //一个布尔值,决定是否弹跳总是出现水平滚动时达到结束内容的看法。默认值是NO 。

@property(nonatomic) BOOL alwaysBounceHorizontal     //如果这个属性被设置为YES而且bounces的值是YES,水平拖动是允许的内容,即使小于滚动视图的边界。默认值是NO 

alwaysBounceVertical         //一个布尔值,决定是否反弹总是发生在垂直滚动到达结束内容。默认值是NO 。 

@property(nonatomic) BOOL alwaysBounceVertical // //如果这个属性被设置为YES而且bounces的值是YES,垂直拖动是允许的内容,即使小于滚动视图的边界。默认值是NO

bounces                           //控制滚动视图是否反弹过去内容的边缘,然后再返回一个布尔值。

@property(nonatomic) BOOL bounces         //默认值是YES 。 

bouncesZoom                  //一个布尔值,决定当缩放超过上限或下限时是否滚动视图推动内容缩放。

@property(nonatomic) BOOL bouncesZoom         //如果这个属性的值是YES并且变焦缩放超过上限或下限,返回他们之前滚动视图暂时缩放内容。如果这属性是NO,立即停止在一个比例限制缩放。默认是YES。 

canCancelContentTouches  //一个布尔值,控制是否涉及到的内容视图中总是导致跟踪。

@property(nonatomic) BOOL canCancelContentTouches

contentInset       //内容视图的距离,是从封闭的滚动视图插图。

@property(nonatomic) UIEdgeInsets contentInset  //使用这个属性添加到周围滚动区域的内容。大小的单位是点。默认值是UIEdgeInsetsZero 。

contentOffset     //在哪个点的内容视图的起源是从滚动视图的原点偏移

@property(nonatomic) CGPoint contentOffset     //默认值为CGPointZero 

contentSize      //内容视图的大小。

@property(nonatomic) CGSize contentSize          //大小的单位是点。默认大小CGSizeZero的。

decelerating   //返回的内容是否在滚动视图后,用户解除他们的手指。 (只读)

@property(nonatomic, readonly, getter=isDecelerating) BOOLdecelerating //如果用户不拖动内容但滚动事件仍发生 ,返回的值是YES。

decelerationRate   //一个浮点值,确定在用户解除他们的手指后的减速率。

@property(nonatomic) float decelerationRate   //使用的UIScrollViewDecelerationRateNormal和UIScrollViewDecelerationRateFas常数作为合理减速率的参考点。

delaysContentTouches    //一个布尔值,决定是否推迟滚动视图触摸手势的处理。

@property(nonatomic) BOOL delaysContentTouches  //如果这个属性的值是YES ,滚动视图延误处理的触摸式的姿态,直到它可以决定

是否滚动是意图。如果该值是NO,滚动视图立即调用touchesShouldBegin :withEvent:inContentView :默认值是YES 。

delegate        //滚动视图对象的代表。

@property(nonatomic, assign) id delegate  //该委托必须采取UIScrollViewDelegate的协议。UIScrollView的类调用委托实现每个协议的方法,它不保留委托。

directionalLockEnabled      //一个布尔值,决定是否在某一特定方向禁用滚动

@property(nonatomic, getter=isDirectionalLockEnabled) BOOLdirectionalLockEnabled //如果此属性是NO,则滚动允许在水平和垂直方向。若是YES,则只在使用者最开始滚动的方向上进行(水平或垂直),若开始滚动是沿对角线方向的则可任意方向滚动。默认值是NO。

dragging      //一个布尔值,指示用户是否已经开始滚动内容。(只读)

@property(nonatomic, readonly, getter=isDragging) BOOL dragging  /在它被设置为YES之前,这个属性的值可能需要一些时间或滚动的距离

indicatorStyle     //滚动指标的风格。

@property(nonatomic) UIScrollViewIndicatorStyle indicatorStyle //默认的风格UIScrollViewIndicatorStyleDefault。详见 “Scroll Indicator Style”


说明这些常数

maximumZoomScale   //一个浮点值指定可用于滚动视图的内容的最大规模的因素。

@property(nonatomic) float maximumZoomScale//此值确定多大的内容可以扩展。它必须大于最小缩放比例缩放才能启用。默认值是1.0 。

Discussion

minimumZoomScale      浮点值,指定可应用于滚动视图的内容的最低比例因子

@property(nonatomic) float minimumZoomScale  //此值决定如何可以缩放小内容。默认值是1.0

pagingEnabled   //一个布尔值,决定是否启用分页滚动视图。

@property(nonatomic, getter=isPagingEnabled) BOOL pagingEnabled//如果这个属性的值是YES,当用户滚动时,滚动视图停止滚动视图的边界的倍数。默认值是NO 。

panGestureRecognizer    //泛手势的基本手势识别。 (只读)

@property(nonatomic, readonly) UIPanGestureRecognizer*panGestureRecognizer //你的应用程序访问此属性,当它希望能够通过滚动视图更精确地控制泛手势确认。

pinchGestureRecognizer       //捏的基本的手势识别。 (只读)

@property(nonatomic, readonly) UIPinchGestureRecognizer*pinchGestureRecognizer //你的应用程序访问此属性时,它希望能够通过滚动视图更精确地控制捏手势确认。

scrollEnabled        //一个布尔值,决定是否启用滚动。

@property(nonatomic, getter=isScrollEnabled) BOOL scrollEnabled   //如果这个属性的值是YES,滚动启用,如果它是NO,滚动被禁用。默认值是YES。 被禁用滚动时,滚动视图不接受触摸事件,将其转发响应链。

scrollIndicatorInsets     //滚动指标点到滚动视图的边缘的距离。

@property(nonatomic) UIEdgeInsets scrollIndicatorInsets   //默认值为UIEdgeInsetsZero

scrollsToTop    //一个布尔值,控制是否滚动到顶部的姿态是有效的

@property(nonatomic) BOOL scrollsToTop   //当设为YES,发生这种姿态时滚动视图跳转到内容顶端,此属性的默认值是YES 。

showsHorizontalScrollIndicator      //一个布尔值,控制水平滚动指标是否是可见的。

@property(nonatomic) BOOL showsHorizontalScrollIndicator //默认值是YES。指标是可见的,而跟踪正在进行,结束后淡出。

showsVerticalScrollIndicator        //一个布尔值,控制垂直滚动指标是否是可见的。

@property(nonatomic) BOOL showsVerticalScrollIndicator  ////默认值是YES 。指标是可见的,而跟踪正在进行,结束后淡出。

tracking     //返回判断是否用户触碰内容触发滚动(只读)

@property(nonatomic, readonly, getter=isTracking) BOOL tracking  //如果用户已经触及的内容视图但可能还没有开始拖动它。这个属性的值便是YES

zoomBouncing     // 一个布尔值,指示缩放已超过指定的接收范围。(只读)

@property(nonatomic, readonly, getter=isZoomBouncing) BOOLzoomBouncing //这个属性的值是YES如果滚动视图缩放回最小或最大变焦缩放值;否则值为NO。 

zooming    //一个布尔值,指示内容是否认为正在放大或缩小。 (只读)

@property(nonatomic, readonly, getter=isZooming) BOOL zooming //如果用户缩放手势,否则它是没有这个属性的值是YES 

zoomScale   //一个浮点值,指定目前用于滚动视图的内容的比例因子。

@property(nonatomic) float zoomScale        //此值确定多少内容目前正在缩放。默认值是1.0 

Instance Methods

flashScrollIndicators     //暂时显示滚动指标。

- (void)flashScrollIndicators  //当你把滚动视图移动到前面,你应该调用此方法。 

scrollRectToVisible:animated: //滚动一个特定区域的内容以便它在接收是可见的

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated    //此方法滚动查看内容,以便由rect定义的区域仅仅是滚动视图内是可见的。如果该地区已是可见的,该方法什么都不做。

参数:

rect              //定义一个矩形面积的内容视图。

animated       //YES if the scrolling should be animated, NO ifit should be immediate. 

setContentOffset:animated:     设置从内容视图的原点偏移对应接收机的起源

- (void)setContentOffset:(CGPoint)contentOffsetanimated:(BOOL)animated

参数:

contentOffset   //从内容视图的原点偏移的一个点

animated         YES表示以一个恒定的速度过渡到新的偏移,NO表示立即到达

setZoomScale:animated:   //一个浮点数指定当前的缩放比例

- (void)setZoomScale:(float)scale animated:(BOOL)animated //新的值应该在是minimumZoomScale和maximumZoomScale之间

参数:

scale        //缩放内容的新的值。

animated    //YES推动过渡到新的规模, NO以使立即过渡。

touchesShouldBegin:withEvent:inContentView:   //自定义默认行为,当手指触摸在显示的内容由子类重写。

- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent*)event inContentView:(UIView *)view //UIScrollView的默认行为是调用触摸事件发生的UIResponder的事件处理方法的目标子视图 

参数:

touches    //一个涉及的UITouch实例集代表表示事件的开始阶段

event       //代表在触摸触摸对象属于事件的对象。

view        //在内容中发生触摸手势子视图。 

Return Value     //返回NO,如果你不想滚动视图发送的事件消息查看。如果你想以接收这些消息,返回YES (默认) 。 

touchesShouldCancelInContentView:    //返回是否取消有关的内容子视图的接触,并开始拖动。

- (BOOL)touchesShouldCancelInContentView:(UIView *)view //它开始发送跟踪邮件的内容视图后动视图调用此方法。如果它从这种方法收到NO便停止拖动和转发触摸事件的内容子视图。滚动视图不调用此方法如果canCancelContentTouches属性值是NO

参数:

view       在内容中被触发的视图对象

Return Value   //YES取消进一步触控消息查看,NO查看继续收到这些消息。如果视图认为是不是一个UIControl对象默认YES,否则返回NO

zoomToRect:animated:   //缩小到特定区域的内容,所以它是在接收器中可见。 

- (void)zoomToRect:(CGRect)rect animated:(BOOL)animated  //这种方法调整的zoomScale进行必要的缩放以便使内容视图成为由矩形定义的区域

rect         //矩形定义内容视图区

animated         //YES if the scrolling shouldbe animated, NO if it should be immediate. 

Constants 

Scroll Indicator Style

typedef enum {  //指示器风格设置

UIScrollViewIndicatorStyleDefault,     //默认,

UIScrollViewIndicatorStyleBlack,       //适用于白色内容背景

UIScrollViewIndicatorStyleWhite  

} UIScrollViewIndicatorStyle;  

Deceleration Constants   //减速常数

The rate of deceleration for a scrolling view.  

{

const float UIScrollViewDecelerationRateNormal;   //默认减速率

const float UIScrollViewDecelerationRateFast;     

}


要打开缩放功能,你还需要增加一个UIScrollViewDelegate 代理,通过一个名为 viewForZoomingScrollView

的方法做出响应。这个方法会返回进行缩放时所使用的 UIView 对象:

  1. scrollView.delegate = self;   
  2. - (UIView*)viewForZoomingInScrollView:(UIScrollView*)scrollView{   
  3. <SPAN style="WHITE-SPACE: pre"> </SPAN>retutn myView;   
  4. }  
  1. scrollView.delegate = self;  
  2. - (UIView*)viewForZoomingInScrollView:(UIScrollView*)scrollView{  
  3. <span style="WHITE-SPACE: pre"> </span>retutn myView;  
  4. }  

Tips:对于大规模数据,你可能会在最初使用一个低于实际大小(1.0)的缩放比例,让用户可以平滑地进行放大。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值