• iOS开发之 UIScrollView的frame、contentSize、contentOffset和contentInset属性


    ios中下拉图片变大效果

    http://blog.csdn.net/mad2man/article/details/14169197

    IOS中UIScrollView的frame、contentSize、contentOffset和contentInset属性

    (1) frame            :是指scrollview的可视范围(可看见的区域)。

    (2)contentsize    :是其滚动范围。UIScrollView所有内容的尺⼨寸,也就是告诉 它滚动的范围(能滚多远,就滚多远) 

    (3)contentinset  :为UIScrollView增加额外的滚动区域。(上,左,下,右)逆时针。

    (5)contentoffset :是个CGpoint类型的结构体,用来记录ScrollView的滚动位置,即记录着“框”跑到了哪里。知道了这个属性,就知道了其位置,可以通过设置这个属性来控制这个“框”的移动。坐标值,会随着用户滑动内容视图,而改变。

    contentInset是scrollview的contentview的顶点相对于scrollview的位置

    设置内容位置{top, left, bottom, right};// 增加额外的滚动区域(逆时针,上、左、下、右)

    scrollView.contentInset = UIEdgeInsetsMake(50, 0, 0, 0);

    这样定义后,内容视图开始显示的坐标为(0,51)

    contentOffset 的默认点为 CGPointZero 

    下面具体解释一下。

    就像两张重叠在一起的纸,上面的纸中间有个320*480的屏幕状的洞,然后下面的纸可以无限大,显示是内容,你可以将手指通过这张洞来移动下面的纸,来阅读上面的信息,所以,懂了吧。

    contentOffset是UIScrollView当前显示区域的顶点相对于frame顶点的偏移量,

    值得注意的是:

    1.内容视图的contentOffset为负数时,在滚动视图中是看不到的。

    contentSize 是scrollview中的一个属性,它代表scrollview中的可显示区域,假如有一个scrollview,它的frame为(0,0,320,480),而它的contentSize为(320,960).也就是说,这个scrollview整个内容的大小为(320,960),要通过上下滑动scrollview来查看(320,480)后的内容。

    contentOffset 是scrollview当前显示区域顶点相对于frame顶点的偏移量,比如上个例子你拉到最下面,contentoffset就是(0 ,480),也就是y偏移了480

    contentInset 是scrollview中contentView.frame.origin与scrollview.frame.origin的关系,比如contentView的frame为(0,30,320,480),那么contentInset则为(0, 30),

    2011090401133327.jpg

  • 相关阅读:
    反射机制小结
    IO流小节
    C# 利用file打印日志
    JS判断表单内容是否更改过
    input file 样式以及获取选择文件方法集合
    JS判断终端浏览器类型
    Node.js服务的重启与监控
    ASP.NET MVC 与Form表单交互
    JS 更改表单的提交时间和Input file的样式
    My SQL和LINQ 实现ROW_NUMBER() OVER以及Fatal error encountered during command execution
  • 原文地址:https://www.cnblogs.com/muyushifang07/p/4449902.html
Copyright © 2020-2023  润新知