您的位置:首页 > 其它

frame,contentOffset,contentInset

2016-06-04 22:08 260 查看
 frame属性

frame 是UIView中表示该控件所占有矩形区域。该属性是相对与它的superView(父视图控件)来说的。

[superView insertSubview:childView atIndex:0];

 childView.frame = CGRectMake(0,
0, 320, 460);

childView 视图将被定义在superView 视图的(0,0)位置,宽320
高460。(注意,是针对父视图来定位矩形区域)

---------------------------------

 

contentOffset 属性

官方解释:


contentOffset

The point at which the origin of the content view is offset from the origin of the scroll view.

是一个坐标点,这个坐标点是滚动视图中内容视图所在的坐标点。

这描述真心别扭啊!!!





换个思路理解:

可以把滚动视图看成是两层:“UIScrollView外壳” 和 “内容视图”
contentOffset属性是UIScrollView外壳内部,显示内容所在的坐标点。

 



如下图:





也就是说,滚动视图中,用户滚动时,滚动的是内容视图,而contentOffset坐标,指代的就是内容视图的坐标。
contentOffset 的默认点为 
CGPointZero 


值得注意的是:

1.contentOffset 坐标值,会随着用户滑动内容视图,而改变。

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





---------------------------------

contentInset属性

这个属性理解起来,很容易,但是,表述起来有点困难。

直接说效果:就跟,css中padding属性作用是一样的。

 

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

这样定义后,内容视图开始显示的坐标为(0,51)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: