iOS开发-UIScrollView详解
来源:互联网 发布:pmc编程 编辑:程序博客网 时间:2024/06/05 19:25
属性
directionalLockEnabled
用于拖拽的时候锁定滚动方向 默认为NO即不锁定
bounces
用于指示scrollView的内容边界能否超出scrollView边界 默认为YES,即有回弹效果
alwaysBounceVertical
垂直方向contentView高度小于scrollView高度时仍能拖拽(前提是bouncs属性为YES)
alwaysBounceVertical
水平方向contentView高度小于scrollView高度时仍能拖拽(前提是bouncs属性为YES)
scrollEnabled
是否允许拖拽滚动
pagingEnabled
是否允许翻页滚动
indicatorStyle
typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) { UIScrollViewIndicatorStyleDefault, // black with white border. good against any background UIScrollViewIndicatorStyleBlack, // black only. smaller. good against a white background UIScrollViewIndicatorStyleWhite // white only. smaller. good against a black background};
设置指示条类型
scrollIndicatorInsets
设置指示条缩进量
decelerationRate
UIKIT_EXTERN const CGFloat UIScrollViewDecelerationRateNormal NS_AVAILABLE_IOS(3_0); UIKIT_EXTERN const CGFloat UIScrollViewDecelerationRateFast
用于设置拖拽停止时的减速速率 系统提供两个静态常量
scrollsToTop
点击状态栏是否滚动到顶部,默认为YES
panGestureRecognizer
可以获取scrollView内置的滑动手势识别器进行相关配置
keyboardDismissMode
滚动时释放键盘(设置为UIScrollViewKeyboardDismissModeOnDrag会有警告,原因好像是因为连续两次释放键盘,一次是scrollView拖动释放,一次是textField失去焦点释放,尚为找到解决办法)
minimumZoomScale
最小缩放倍数
maximumZoomScale
最大缩放倍数
delegate
代理对象
delaysContentTouches
触摸直接传递给子视图,没有150ms延迟等待
canCancelContentTouches
触摸一旦传递给子视图,不会再传回给contentView,即不会再滚动
tracking
只读属性,是否正在触摸
dragging
只读属性,是否正在拖拽
decelerating
只读属性,是否正在减速
方法
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated;
滚动到指定的contentOffSet位置
- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated;
滚动到使指定区域可见的位置(就近原则)
- (void)flashScrollIndicators;
短暂显示指示器
- (void)setZoomScale:(CGFloat)scale animated:(BOOL)animated;
缩放指定子视图到指定倍数
- (void)zoomToRect:(CGRect)rect animated:(BOOL)animated
缩放指定子视图到指定区域
UIScrollViewDelegate
/*滚动相关*///scrollView滚动时,就调用该方法。任何offset值改变都调用该方法。即滚动过程中,调用多次- (void)scrollViewDidScroll:(UIScrollView *)scrollView{}//拖拽scrollView时调用此方法- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{}//停止拖拽即手指离开屏幕那一刹那时调用//velocity 停止一刻的滑动速度 单位为point/毫秒//targetContentOffset 最终停止时的contentOffset- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{}//停止拖拽即手指离开屏幕那一刹那时调用//decelerate 停止拖拽后是否继续滑动- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{}// 滑动将要减速时调用(不包括拖拽过程中的减速)- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{}// 滚动视图减速完成,滚动停止时调用- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{}//当滚动视图动画完成后,调用该方法(即调用setContentOffset/scrollRectVisible:animated:并动画执行完毕后调用,对拖拽引起的滚动无效)- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{}/*缩放相关*/// 当scrollView缩放时,调用该方法。在缩放过程中,回多次调用- (void)scrollViewDidZoom:(UIScrollView *)scrollView{}// 返回将要缩放的UIView对象(必须是self.scrollView的子视图),缩放过程中要执行多次。若返回nil则缩放过程什么都不发生- (nullable UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{ return self.tfZoom;}//即将缩放,只执行一次- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(nullable UIView *)view{}//缩放结束,只执行一次- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(nullable UIView *)view atScale:(CGFloat)scale{}/*点击状态栏滚动到顶端*///只有当scrollsToTop属性为yes,且该方法返回yes时,点击状态栏才能滚回顶端。默认返回yes- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{ return YES;}//点击状态栏滚动到顶端后调用- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{}
0 0
- iOS开发-UIScrollView详解
- IOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- iOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- IOS开发UIScrollView控件详解
- iOS开发 -UIScrollView详解
- iOS开发 -UIScrollView详解
- iOS开发 -UIScrollView详解
- iOS开发UIScrollView使用详解
- IOS开发UIScrollView控件详解
- IOS开发之UIScrollView控件详解
- IOS开发之UIScrollView控件详解
- IOS UIScrollView详解
- IOS之UIScrollView详解
- iBatis 代码自动生成工具 iBator
- Golang 中的格式化输入输出
- Android常用工具类DateUtils(二)
- sklearn-基础使用
- Combination Lock ---线段树
- iOS开发-UIScrollView详解
- 套接字编程简介
- [译]GitHub应对1.28宕机事故的前前后后
- 笔记整理 静态与非静态 继承哪一些 继承链 重写 属性方法重载 PDO
- android 上传文件到服务器
- Java 多线程学习
- 利用StringEscapeUtils对字符串进行各种转义与反转义(Java)
- Jeecg Maven本地仓库下载地址
- cordova开发介绍(android平台)