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

很多人在学习的就搞混了bounds和frame的区别,大家可以看看这张图就会明白它俩的区别:

frame: 该view在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)

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

center:该view的中心点在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)

看上图中,如果将ViewA的bounds设置为(-200,-100,550,400)那么view.frame = (0,0,550,400) view.bounds =  (0,0,550,400);

综上,每个新的view默认的bounds其实都是(0,0, , )

【viewWithTag就是根据tag获取view
比如在view里加了一个viewbutton   然后设置他的tag为 101
然后(UIButton *)[当前view viewWithTag:101] 就可以取到你加的button】
时间: 2024-10-21 19:12:57

一张图让你明白IOS中bounds和frame的区别的相关文章

一张图让你明白canvas的径向渐变

我相信在径向渐变中,如果一个圆包含另一个圆,没有会不知道渐变的样子,但是如果两个圆相交或者是相分离呢?看完这张图你就明白了 渐变都是从红色向蓝色, createRadialGradient(x1,y1,r1, x2,y2,r2) 左图为小圆向大圆渐变,中图为大院向小圆渐变,右图为相离两个圆的渐变,从图中可以很清楚的看到圆相离或相交时的渐变方式,渐变总是从起始圆开始(包括起始圆内部),朝着结束圆方向,直到遇到结束圆(不包括结束圆内部).

IOS中Retain和Copy的区别

IOS中Retain和Copy的区别 1 ,可读性: readonly  . readwrite@property(readwrite,....) valueType value;这个属性是变量的默认属性,就是如果你 (readwrite and readonly 都没有使用,那么你的变量就是 readwrite 属性 ) ,通过加入 readwrite 属性你的变量就会有 get 方法,和 set 方法.property(readonly,...) valueType value;这个属性变量

一句话搞定IOS中View的Frame和Bound

就一句话,Frame是父View上看到子View的窗户,Bound是子View上可以被父View看见的内容. 稍微解释下.Frame 指子View在父View中的位置以及大小.由两部分构成,第一部分是Origin,规定了子View在父类的位置.第二部分是Size,指View在父类中的可视范围(这里能说是View的大小).这感觉像是在父View中在Frame.Origin位置打开一个窗户,窗户的大小是Frame.Size,从窗户中可以看到子View的内容. Bound 指子View自身显示那些内容

56张图详细分解Flash CS6中对齐面板的使用

Flash CS6的"对齐面板"用于舞台中对象的对齐.分布.匹配大小.间隔等操作.就是下图这个东东: 它是动画制作过程中用于"排兵布阵"的好帮手.教学中发现学生对"对齐面板"的了解经常是初浅的,只有模模糊糊的一个概念,不能把握其真正的精髓.因此,决定使用比较形象的图来分解这些操作,让学生对把握其精髓,好"排兵布阵".(真是应了一句网络语:不作不死!图解共截了56张图,很辛苦的......) 一.先看操作选项 从上图的"

UIView 中bounds和frame的差别

搞iOS开发的童鞋基本都会用过UIView,那他的bounds和frame两个属性也不会陌生,那这两个有什么实质性的区别呢? 先看到下面的代码你肯定就明白了一些: -(CGRect)frame{     returnCGRectMake(self.frame.origin.x,self.frame.origin.y,self.frame.size.width,self.frame.size.height); } -(CGRect)bounds{     returnCGRectMake(0,0,

一张图记住TCP/IP通讯中的IP地址配置

TCP/IP通讯情景: 用网线将计算机A(服务器Server)和计算机B(Client)连接起来.程序代码在计算机A中,计算机B中安装有TCP/IP通讯助手. (图中屏幕大的是计算机A,屏幕小的笔记本是计算机B)

2.鸟哥学习笔记--几张图让你明白硬盘的工作原理

硬盘(英语:Hard Disk Drive,简称HDD)是电脑上使用坚硬的旋转盘片为基础的非挥发性存储设备,它在平整的磁性表面存储和检索数字数据,信息通过离磁性表面很近的磁头,由电磁流来改变极性方式被电磁流写到磁盘上,信息可以通过相反的方式读取,例如读头经过纪录数据的上方时磁场导致线圈中电气信号的改变.硬盘的读写是采用随机存取的方式,因此可以以任意顺序读取硬盘中的数据[2].硬盘包括一至数片高速转动的磁盘以及放在执行器悬臂上的磁头. 维基百科详细资料:http://zh.wikipedia.or

【原】iOS中KVC和KVO的区别

在iOS开发中经常会看到KVC和KVO这两个概念,比较可能混淆,特地区分一下 KVC(Key Value Coding) 1> 概述 KVC:Key Value Coding,键值编码,是一种间接访问实例变量的方法. KVC 提供了一个使用字符串(Key)而不是访问器方法,去访问一个对象实例变量的机制. 2> KVC部分源码(头文件) 1 // NSKeyValueCoding.h 2 @interface NSObject(NSKeyValueCoding) 3 4 + (BOOL)acce

一张图看懂AI、机器学习和深度学习的区别

AI(人工智能)是未来,是科幻小说,是我们日常生活的一部分.所有论断都是正确的,只是要看你所谈到的AI到底是什么. 例如,当谷歌DeepMind开发的AlphaGo程序打败韩国职业围棋高手Lee Se-dol,媒体在描述DeepMind的胜利时用到了AI.机器学习.深度学习等术语.AlphaGo之所以打败Lee Se-dol,这三项技术都立下了汗马功劳,但它们并不是一回事. 要搞清它们的关系,最直观的表述方式就是同心圆,最先出现的是理念,然后是机器学习,当机器学习繁荣之后就出现了深度学习,今天的