一张图让你明白IOS中bounds和frame的区别

很多人在学习的就搞混了bounds和frame的区别,大家可以看看这张图就会明白它俩的区别:
 
一张图让你明白IOS中bounds和frame的区别
 
frame: 该view在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)

bounds:该view在本地坐标系统中的位置和大小。(参照点是,本地坐标系统,就相当于ViewB自己的坐标系统,以0,0点为起点)

center:该view的中心点在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)
 
看上图中,如果将ViewA的bounds设置为(-200,-100,550,400)那么viewB.frame = (0,0,550,400), viewB.bounds =  (0,0,550,400);
如果将VIewA的bounds设置为(0,0,550,400),那么viewB,frame = (200,100,550,400) ,viewB.bounds =  (0,0,550,400);
综上,每个新的view默认的bounds其实都是(0,0, , )
 
【viewWithTag就是根据tag获取view
比如在view里加了一个viewbutton 然后设置他的tag为 101
然后(UIButton *)[当前view viewWithTag:101] 就可以取到你加的button】