一、   基本使用

1.   作用

UIScrollView可以用于显示多于一个屏幕的内容,超出屏幕范围的内容可以通过滑动进行查看

2.   常见属性

  1. CGSizecontentSize:设置UIScrollView的滚动范围

  2. CGPointcontentOffset :UIScrollView当前滚动的位置

  3. UIEdgeInsetscontentInset :这个属性可以在四周增加滚动范围

3.   其他属性

  1. BOOL bounces          是否有弹簧效果

  2. BOOL scrollEnabled        是否能滚动

  3. BOOLshowsHorizontalScrollIndicator      是否显示水平方向的滚动条

  4. BOOLshowsVerticalScrollIndicator     是否显示垂直方向的滚动条

  5. UIScrollViewIndicatorStyleindicatorStyle  设定滚动条的样式

  6. BOOL dragging          是否正在被拖拽

  7. BOOL tracking 当touch后还没有拖动的时候值是YES,否则NO

  8. BOOL decelerating           是否正在减速

  9. BOOL zooming          是否正在缩放

二、   手势缩放

1.    设置UIScrollView的id<UISCrollViewDelegate> delegate代理对象

2.    设置minimumZoomScale :缩小的最小比例

3.    设置maximumZoomScale :放大的最大比例

4.    让代理对象实现下面的方法,返回需要缩放的视图控件

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

    - 跟缩放相关的常用方法还有

    - 正在缩放的时候调用

-(void)scrollViewDidZoom:(UIScrollView*)scrollView

    - 缩放完毕的时候调用

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

三、   分页效果

1  设置pagingEnabled=YES即可,UIScrollView会被分割成多个独立页面,用户的滚动体验则变成 了页面翻转

2 一般会配合UIPageControl增强分页效果,UIPageControl常用属性:

NSInteger numberOfPages : 总页数

NSInteger currentPage : 当前的页码

BOOL hidesForSinglePage : 当只有一页的时候,是否要隐藏视图

3 监听UIPageControl的页面改变:

// 添加监听器

[pageControl addTarget:self action:@selector(pageChange:)
forControlEvents:UIControlEventValueChanged];

// 监听方法

- (void)pageChange:(UIPageControl*)pageControl
{  }

转载于:https://blog.51cto.com/8656996/1368899

Objective-C中的UIScrollView相关推荐

  1. iOS中的UIScrollView(滑动视图)

    2019独角兽企业重金招聘Python工程师标准>>> UIScrollView  可以滑动的视图 #import "ViewController.h"@inte ...

  2. 如何在 AutoLayout 中使用 UIScrollView (多个ContentView)

    http://codehappily.wordpress.com/2013/11/14/iOS-how-to-use-uiscrollview-with-autolayout-pure-autolay ...

  3. Objective C 中的nil,Nil,NULL和NSNull理解

    kenyo网友的原创说法是:做IOS开发的估计都对Objective-C的内存管理机制很头疼,一不小心程序就会出内存泄露,我也不例外,前几天被指针的置nil与release给搞惨了,今和大家详细解说一 ...

  4. Objective C中@protected等关键字概述

    关于变量的作用域 @protected -Methods defined in the class and any subclasses can directly access the instanc ...

  5. 如何控制修改UIWebView中的UIScrollView

    UIWebView的唯一一个subview就是UIScrollView,不过苹果并没有提供直接的访问方式给scrollview,因此当你直接这么使用scrollview的时候 uiwebview.sc ...

  6. objective c中的nil,Nil

    nil用法 Objective-C中nil nil nil和C语言的NULL相同,在objc/objc.h中定义.nil表示一个Objctive-C对象,这个对象的指针指向空(没有东西就是空). Ni ...

  7. 如何在Objective C中声明Block?

    本文翻译自http://fuckingblocksyntax.com/ 作为局部变量: returnType(^blockName)(parameterTypes) = ^returnType(par ...

  8. 在Objective C中定义私有的成员变量

    使用了LLVM以后,终于可以定义私有的成员变量了. @interface RadioViewController () { @privateUIBackgroundTaskIdentifier tas ...

  9. Objective中调用Swift代码

    原创Blog,转载请注明出处 http://blog.csdn.net/hello_hwc 步骤比较简单: 1.在Objective C工程中,创建新文件(command+N),选择Swift文件 2 ...

最新文章

  1. SAP MM 采购申请中的物料组字段改成Optional
  2. Matlab | Matlab从入门到放弃(11)——基于Matlab的矩阵分解、幂和指数
  3. dp入门 专题记录 2017-7-26
  4. 一文整理Docker【Docker使用(更新中)】
  5. android studio下NDK开发
  6. NOIP2018洛谷P5021:修建赛道
  7. css样式中如何设置中文字体?
  8. go语言一天入门(上)
  9. 极光:2021年移动互联网母婴亲子行业研究报告
  10. 电竞+区块链,玩家的4大入局方式
  11. 北京国际大数据交易所成立,采用区块链技术分离数据所有权
  12. 如何从视频中删除声音?
  13. 位 bit、字节 B Byte、M兆、MB
  14. 纯js实现俄罗斯方块详解与源码
  15. c++超级简单的计算器
  16. Android 编译错误:CreateProcess error=206, 文件名或扩展名太长。
  17. java集成企业微信完成授权登录
  18. Unity学习笔记:个人学习项目《疯狂天才埃德加》纠错文档
  19. 企业虚拟服务器管理,中小企业虚拟化解决方案-VMware vSphere 6.5-日常管理入口v0.0.1...
  20. LINUX 和ubu 分别设置Ip

热门文章

  1. Java基础之不一样的方法重载!
  2. 洛谷P2770 航空路线问题(费用流)
  3. 如何监控主从故障是否正常?MySQL数据库
  4. EventBus,轻松实现跨组件跨线程通信
  5. 使用 Nginx 部署静态页面
  6. httpServletRequest中的流只能读取一次的原因
  7. 《破茧成蝶——用户体验设计师的成长之路》一1.2 邂逅用户体验设计
  8. iOS开源项目周报1229
  9. 关于博客改版:我的一些想法与初衷
  10. 各版本Sql Server下载地址全