首页 > 代码库 > 学习IOS开发UI篇--UI知识点总结(三) UIScrollView/UIPageControl/NSTimer

学习IOS开发UI篇--UI知识点总结(三) UIScrollView/UIPageControl/NSTimer

  UIScrollView:常用属性

@property(nonatomic)   UIEdgeInsets     contentInset;               // default UIEdgeInsetsZero. add additional scroll area around content

@property(nonatomic,getter=isPagingEnabled) BOOL   pagingEnabled;     // default NO. if YES, stop on multiples of view bounds

@property(nonatomic)         BOOL   showsHorizontalScrollIndicator; // default YES. show indicator while we are tracking. fades out after tracking

@property(nonatomic)         BOOL   showsVerticalScrollIndicator;   // default YES. show indicator while we are tracking. fades out after tracking

@property(nonatomic) CGFloat minimumZoomScale;     // default is 1.0 (缩放属性)

@property(nonatomic) CGFloat maximumZoomScale;     // default is 1.0. must be > minimum zoom scale to enable zooming

  常用代理方法

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView;     // return a view that will be scaled. if delegate returns nil, nothing happens (实现缩放)

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView; //

- (void)scrollViewDidScroll:(UIScrollView *)scrollView;  //滚动时执行

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

 

  UIPageControl:常用属性 (一般配合NSTimer使用)

@property(nonatomic) NSInteger numberOfPages;     

@property(nonatomic) NSInteger currentPage; 

 

  NSTimer:常用方法

- (void)invalidate; 当屏幕被手动滚动的时候应该让timer失效, [timer invalidate],然后清空timer = nil;

当滚动停止的时候再创建timer,设置

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo; (次方法在多滚动试图中,只能滚动一个)

+ (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo; (此方法需要配合NSRunLoop使用)

NSRunLoop的对象方法调用者是  [NSRunLoop main]

- (void)addTimer:(NSTimer *)timer forMode:(NSString *)mode;

timer 传入上方法返回的对象

mode 传入NSRunLoopCommonModes