iOS 浅谈CGGeometry——几何类常用方法

本文介绍了iOS开发中CGGeometry的相关方法,如CGRectGet系列用于获取矩形边界和尺寸,以及CGRectInset和CGRectOffset分别进行内缩和平移操作。文章强调了使用CGGeometry方法的语义清晰、性能优势,并提醒开发者注意负数宽度和高度的影响,以确保正确获取视图的真实位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

hihi,勇敢的小伙伴儿们大家好,平常我总是只会简单的使用CGRect,CGPoint,CGSize,发现自己真的low到不行···所以今天来跟大家一起学习一下CGGeometry中的一些方法。

CGGeometry参考定义几何结构和功能,操作简单。数据结构中的一个点CGPoint代表在一个二维坐标系统。数据结构的位置和尺寸CGRect代表的一个长方形。数据结构的尺寸CGSize代表宽度和高度。

正文

1.CGRect中的CGRectGet

CGGeometry中提供了取特定CGRect值的便捷方法。

  • CGRectGetMinX
  • CGRectGetMinY
  • CGRectGetMidX
  • CGRectGetMidY
  • CGRectGetMaxX
  • CGRectGetMaxY
  • CGRectGetWidth
  • CGRectGetHeight

这其中CGRectGetMidXCGRectGetMidYCGRectGetMaxXCGRectGetMaxY四个方法十分有用。

CGRectGetMaxX代替 frame.origin.x + frame.size.width 将是代码更加清晰、语义上也更为生动直观。

另外三个方法也同样,他们都可以用来代替类似这样的代码。

  • CGRectGetMidX 用来替代 frame.origin.x + frame.size.width / 2.
  • CGRectGetMidY 用来替代 frame.origin.y + frame.size.height / 2.
  • CGRectGetMaxX 用来替代 frame.origin.y + frame.size.width
  • CGRectGetMaxY 用来替代 frame.origin.y + frame.size.height

emmm暴风哭泣!用了它们几个基本不用再繁琐的计算了,超级方便!

这时候你也许会想到,那CGRectGetMinX,CGRectGetMinY和CGRectGetWidth,CGRectGetHeight四个方法是不是也是用来替代类似这样的代码。

  • CGRectGetMinX 用来替代 frame.origin.x
  • CGRectGetMinY 用来替代 frame.origin.y
  • CGRectGetWidth 用来替代 frame.size.width
  • CGRectGetHeight 用来替代 frame.size.height

答案是肯定的。但是这四个方法看起来却不是那么的方便,因为跟直接调用比,这样写代码要更长,emmmm,对于没用过这个的程序员来讲,读代码的难度也增加了。不建议这么写。

而且如果想要唤起 Xcode 的联想,最少需要输入“CGRectGet”八个字母。而直接调用通常只需要输入“f”,“.o”,“.x”五个字母就能联想完成。经过性能测试,CGRectGetMin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值