CGRect vs CGPoint vs CGSize

l来自http://bengan.javaeye.com/blog/728457,感谢分享!

每个视图都使用一个边框定义其界限。这个边框指定了视图的轮廓:其位置、宽度和高度。


我们使用Core Graphics结构宋定义边框矩形。对于边框,这通常表示由原点(CGPoint,x和y)和大小(CGsize,宽度和高度)组成的CGRect矩形。下面是这些类型的简要描述。

    1.CGRect

    CGRect结构在屏幕上定义了一个矩形。它包含原点(rect.origin)和大小(rect.size)。需要了解以下CGRect函数。

    ·CGRectMake(origin.x,origin.y,size.width. Size.height)在代码中定义矩形。

    ·NSStringFromCGReot(someCGRect)把CGRect结构转变为格式化字符串。

    ·CGRectFromString(aString)由字符串表示恢复出矩形。

    ·CGRectlnset(aRect)用来创建较小或较大的矩形(中心点相同)。使用正的内嵌值表示较小的矩形,使用负的内嵌值表示较大的矩形。

    ·CGRectIntersectsRect(rect 1.feet 2)可以判断矩形结构是否交叉,两个矩形对象是否重叠。

    ·CGRectZero是一个高度和宽度为零、位于(0,0)的矩形常量。需要创建边框但还不确定边框大小或位置时,可以使用此常量。

    2.CGPoint和CGSize

    前者通过x和y坐标定义,后者包括宽度和高度。使用CGPointMake(x,y)创建点。CGSize- Make(width,height)创建大小。虽然这两个结构看上去相同(两个浮点值),但iPhoneSDK对二者有所区别。点表示位置值,大小表示程度值。不能将myFrame.origin设置为大小。

    与矩形相同,可以将它们与字符串进行相互转换,可用如下函数:NSStringFromCGPoint()、 NSStringPromCGgize()、CGSizeFromString()和CGPointFromString()。

    3.定义位置

    可以通过设置中心点(CGPoint)或边界(CGRect)定义视图的位置。与边框不同,视图的边界使用它自己的坐标系来反映视图的边框。在实际应用中,这表示边界的原点为(0.0,0.0),大小是它的宽度和高度。

    当希望移动视图或重新调整视图大小时,可以更新其边框的原点、中心点或大小。不需要担心显示或隐藏的矩形部分。iPhone将负责完成重新绘图。这允许将视图作为切实的对象对待,并将呈现问题委托给CocoaTouch。例如[myViewsetFrame:CGRectMake(0.of,50.Of.mywidth, myheight)];。

转载于:https://www.cnblogs.com/zhwl/archive/2012/03/16/2400133.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/297272.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】URL编码(encodeURIComponent和decodeURIComponent)

转自http://blog.jhonse.com/archives/2032.jhonse 最近在用CI框架的时候,发现一个问题,URL的GET方式链接时,如果用中文字符的话,就会出现问题,提示:链接字符不通过,于是在网上找了很多方法&…

收藏!这10部关于数学的顶级纪录片,告诉孩子数学跟枯燥不沾边!

全世界只有3.14 % 的人关注了爆炸吧知识学好数学,必须从娃娃抓起!数学是人类的高级思维活动,越往顶层走,需要的各种思维能力就越多。所以,要想孩子数学好,首先要帮他“打牢思维的地基”。怎么打&#xff1f…

不确定规划及应用代码_性能测试划分之应用领域

性能测试划分性能测试划分有很多种,测试方法也有很多种,更确切的说是由于测试方法的不同决定了测试划分的情况,但在测试过程中性能测试的划分没有绝对的界限,常用的有压力测试、负载测试和并发用户测试等。性能测试的方法主要包括…

使用SysPrep制作Windows2008系统映像

Windows2008及R2的Sysprep程序位于C:\Windows\System32\Sysprep目录下。 前几天在做实验环境的时候发现一个奇怪的问题,成员服务器加入域时,提示加入域成功,但是本地管理员组里没有Domain Admins组,而且将域帐户加入本地管理员组时…

java监听网络连接_Android RxJava 之网络链接监听示范

RxJava在stream events处理上真的是一个利器。下面的示范代码显示如何用它来监听android设备的网络连接状况,实时接收change信息。IntentFilter filter new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);AndroidObservable.fromBroadcast(this, filter)…

老师“鬼话”全曝光!哈哈哈哈哈全国的老师都这样吗?

全世界只有3.14 % 的人关注了爆炸吧知识来源:少女兔(ID:iiilass)完来源:少女兔(ID:iiilass)作者 | 兔姐,宇宙疼老婆协会VIP会员,超人气美女漫画师&#xff0c…

windows2003——IIS

IIS转载于:https://blog.51cto.com/honglingjin2011/515383

需求分析 应该先写业务还是功能_一个套路,拆解常见数据分析需求

现实与Kaggle的区别现实环境的数据分析工作和Kaggle题目之间,最大的区别在于kaggle上的问题往往非常清晰。预测类问题,你只需要把预测做的足够准确就能拿高分。但在实际的业务环境中,你做了一个很牛逼的预测模型,换回来的只是业务…

如何在 ASP.NET CORE 中获取客户端 IP ?

咨询区 eadam:在 ASP.NET 中我可以用 Request.ServerVariables["REMOTE_ADDR"] 来获取客户端IP地址,请问在 ASP.NET Core 中我该如何实现呢?回答区 CodingYourLife如果你用的是 .NET 5,可以用内部提供的扩展方法来实现获…

jQuery EasyUI API 中文文档 - 链接按钮(LinkButton)

LinkButton 链接按钮用 $.fn.linkbutton.defaults 重写了 defaults。用法示例1. <a href"#" id"btn" iconCls"icon-search">easyui</a> 1. $(#btn).linkbutton({ 2. plain:true 3. }); 4. $(#btn).linkbutton(disable); …

10张劲爆眼球的科学动图

全世界只有3.14 % 的人关注了爆炸吧知识气球遇到橙皮会是这样的蚊子是这样吸血的&#xff0c;看着就痒蚊子是这样吸血的&#xff0c;看的浑身发痒显微镜放大看蚊子的利器&#xff0c;蚊子嘴魔术沙强磁铁其实是很危险的物品&#xff0c;携带两块以上的千万要注意全自动显微注射&…

ajax格式

2019独角兽企业重金招聘Python工程师标准>>> $.ajax({ url: "http://www.hzhuti.com", //请求的url地址 dataType: "json", //返回格式为json async: true, //请求是否异步&#xff0c;默认为异步&#xff0c;这也是ajax重要特性 data: { …

java threadsafe 注解_Java 注解详解

什么是注解Annotation 中文译过来就是注解、标释的意思&#xff0c;在 Java 中注解是一个很重要的知识点&#xff0c;但经常还是有点让新手不容易理解。而新手很难理解的主要原因是一些技术文档里的专业术语和名词不太好理解&#xff0c;比如&#xff1a;Java 注解用于为 Java …

python ssh模块_python paramiko模块(ssh) 使用

import paramikofrom io import StringIO# 一般可以从数据库里读取秘钥字符串key_str """-----BEGIN RSA PRIVATE KEY-----MIIEpQIBAAKCAQEAq7gLsqYArAFco02/55IgNg0r7NXOtEM3qXpb/dabJ5Uyky/8NEHhFiQ7deHIRIuTW5Zb0kD6h6EBbVlUMBmwJrC2oSzySLU1wZNfH0PE6W6fan…

小凡模拟器:DynamipsGUI使用问题解决方法

DynamipsGUI前身源于美国加利福尼亚一***的杰作&#xff0c;为此CISCO也是相当的不爽&#xff0c;当然这是后话了。后被小凡编写成为中国CISCO学习者&#xff0c;考CCNA、NP、IE必备的模拟软件&#xff0c;为大家省去了不少银子。 本人在使用小凡的时候碰到过一些问题&#xff…

.Net微服务实战之可观测性

前言很多次去面试&#xff0c;有经验的面试官都会问一个问题&#xff0c;你是怎么去定位日常遇到的问题&#xff1f;平常跟同行分享自己遇到的问题&#xff0c;事后他会问我&#xff0c;这种看起来毫无头绪的问题&#xff0c;你是怎么去定位解决的&#xff1f;其实我们平常不知…

“财务自由的15个阶段!说说你到哪个阶段了?”

1 穷人家的狗子早当家2 看剧的时候忘记理我家猫它就变成这样了... 3 仿佛看到了自己周末&#xff06;放假的日常。4 一颗爆米花的诞生5 说说你的财务到哪个阶段了&#xff1f;6 三个字&#xff0c;证明你是哪里人&#xff1f;不准出现地名你点的每个赞&#xff0c;我都认真当…

LiveJournal发展历程

因近期打算对公司应用架构进行调整, 其中的一些思路值得借鉴. 以下为转载内容: 一、LiveJournal发展历程 LiveJournal是99年始于校园中的项目&#xff0c;几个人出于爱好做了这样一个应用&#xff0c;以实现以下功能&#xff1a; 博客&#xff0c;论坛社会性网络&#xff0c;找…

选择与得失

当脑海里开始产生萌芽了以后&#xff0c;所要做的是什么&#xff1f;怎么去准备以及怎么去实施&#xff1f;这一切对我来说&#xff0c;切切实实是经历了一番挣扎。为了达成阶段性目标&#xff0c;我挣扎的太久&#xff0c;也饱尝其中各种辛酸。但哪怕一次次被拒&#xff0c;或…

hadoop安装hive及配置mysql_Hadoop系列之Hive(数据仓库)安装配置

Hadoop系列之Hive(数据仓库)安装配置1.在NameNode安装cd /root/softtar zxvf apache-hive-0.13.1-bin.tar.gzmv apache-hive-0.13.1-bin /usr/local/hadoop/hive2. 配置环境变量(每个节点都需要增加)打开/etc/profile#添加以下内容&#xff1a;export HIVE_HOME/usr/local/hado…