contentInset,contentsize和contentOffset区别

contentInset,contentsize和contentOffset区别

今天看别人用到了contentInset,觉得很迷糊,于是gogle了一下,搜到了一篇分析的很好的文章,转在这里,也混淆的童鞋大家一起学习一下

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

UIEdgeInsets 设置包围tableView的坐标,typedef struct UIEdgeInsets {

CGFloat top, left, bottom, right;  // specify amount to inset (positive) for each of the edges. values can be negative to ‘outset‘

} UIEdgeInsets;

里面分别是上,左,下,右的包围长度,往下拖动时,如果top 》0, 就会显示出来,如果小于0就会隐藏。

offset//偏移量;



图片:contentInset_results.jpg 

区别:

contentSize是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍。

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

contentInset是scrollview的contentview的顶点相对于scrollview的位置,例如你的contentInset = (0 ,100),那么你的contentview就是从scrollview的(0 ,100)开始显示

另外UITableView是UIScrollView的子类,它们在上述属性又有所不同,tabelview的contentsize是由它的下列方法共同实现的
- (NSInteger)numberOfSections;
- (NSInteger)numberOfRowsInSection:(NSInteger)section;
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section;
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section;
它会自动计算所有的高度和来做为它的contentsize的height.

例如你在delegate方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 100;
}
那么你的tabelview的contentsize就是(320, 4400)

( 转自:http://blog.sina.com.cn/s/blog_67606b900100ri0r.html )

时间: 2024-10-08 00:55:39

contentInset,contentsize和contentOffset区别的相关文章

contentSize、contentInset和contentOffset区别【转】

这几个都是在ios程序中,经常会注意到的一些小细节,能否真正了解这些,对写ios程序也有很大的好处.frame 是UIView中表示此view的一个矩形面积,包括了view在它的superview中的一些几何上的标识.有起始坐标,也就是origin(CGPoint)和这个矩形面积的宽(width)和高(height)bounds 每个view,除了有对应它的superview的相关坐标外,它自己也有对应它自己的几何坐标,所以bounds就是标识它自己坐标关系的一个标识,它有和frame一样的属性

IOS中UIScrollView的contentSize、contentOffset和contentInset属性

IOS中,UIScrollView是可以滚动的视图,其中最常用的UITableView就是继承了UIScrollView. 跟所有的view一样,UIScrollView有一个frame属 性,同时,UIScrollView还具有contentSize.contentOffset和contentInset属性.我在学习中,就觉得其中 contentSize和contentOffset相对比较好理解,对contentInset就有点不太好理解.下面具体解释一下. contentSize是UIScr

iOS 关于滚动视图contentSize、contentOffset、contentInset 的整理

iOS 关于滚动视图contentSize.contentOffset.contentInset 的整理 contentSize 是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍. contentOffset 是scrollview当前显示区域顶点相对于frame顶点的偏移量,比如上个例子你拉到最下面,contentoffset就是

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所有内容的尺?寸,也就是告诉 它滚动的范围(能滚多远,就滚多远)

IOS中UIScrollView的contentSize、contentOffset和contentInsert属性

IOS中,UIScrollView继承于UIView,扩展了滚动,缩放功能,双协议,其中最常用的UITableview就是继承于该类. UIScrollView中的frame.bounds.contentSize.contentOffset和contentInset属性,这几个属性一直都容易混淆,自己小总结一下: frame是基于superView的坐标系创建的,表示该滚动视图在其父视图中的位置 bounds属性是基于该滚动视图本身的坐标系的,主要用于确定其子视图在该滚动视图上的位置,当boun

contentSize、contentInset和contentOffset区别 分类: iphone开发

原文:http://blog.sina.com.cn/s/blog_a843a8850101dkhl.html 这几个都是在ios程序中,经常会注意到的一些小细节,能否真正了解这些,对写ios程序也有很大的好处. frame 是UIView中表示此view的一个矩形面积,包括了view在它的superview中的一些几何上的标识.有起始坐标,也就是origin(CGPoint)和这个矩形面积的宽(width)和高(height) bounds 每个view,除了有对应它的superview的相关

contentSize、contentInset和contentOffset区别

这几个都是在ios程序中,经常会注意到的一些小细节,能否真正了解这些,对写ios程序也有很大的好处. frame 是UIView中表示此view的一个矩形面积,包括了view在它的superview中的一些几何上的标识.有起始坐标,也就是origin(CGPoint)和这个矩形面积的宽(width)和高(height) bounds 每个view,除了有对应它的superview的相关坐标外,它自己也有对应它自己的几何坐标,所以bounds就是标识它自己坐标关系的一个标识,它有和frame一样的

UIScrollView的contentsize、contentoffset和contentInset属性

UIScrollView常用属性有contentSize.contentInset和contentOffset 1.contentSize很好理解,就是UIScrollView的contentView(内容视图)的size 2.contentInset是UIEdgeInsets类型,表示UIScrollView的内边距.可能这样不好理解,可以参考css里的内边距padding. 3.contentOffset是CGPoint类型.它表示contentView(内容视图)沿X轴和Y轴方向偏移值.

UIScrollView的contentSize与contentOffset

UIScrollView为了显示多于一个屏幕的内容或者超过你能放在内存中的内容. Scroll View为你处理缩小放大手势,UIScrollView实现了这些手势,并且替你处理对于它们的探测和回应.其中需要注意的子类是UITableView以及UITextView(用来显示大量的文字).还有一个UIWebView,尽管那不是UIScrollView的直接子类,它适用UIScrollView去显示网页内容 contentsize是内容的宽和高,contentsize.width是内容的宽度,co