1、CGRectInset
CGRect CGRectInset (CGRect rect, CGFloat dx, CGFloat dy)
该结构体是以原rect为中心,再参考dx,dy,进行缩放或者放大
比如:CGRect r1 = CGRectMake(100.0, 100.0, 200.0, 250.0);
CGRect r2 = CGRectInset(r1, 10.0, 20.0);
打印出来:CGRect r2 = CGRectMake(110.0, 120.0, 180.0, 210.0);
如果:CGRect r2 = CGRectInset(r1, -10.0, 20.0);
打印出来:CGRect r2 = CGRectMake(90.0, 120.0, 220.0, 210.0);
2、CGRectOffset
CGRect CGRectOffset (CGRect rect, CGFloat dx, CGFloat dy)
该结构体是以原rect左上角的点沿x轴和y轴偏移,再rect基础上沿x轴和y轴偏移,大小不变
比如:CGRect r1 = CGRectMake(100.0, 100.0, 200.0, 250.0);
CGRect r2 = CGRectOffset(r1, 10.0, 20.0);
打印出来:CGRect r2 = CGRectMake(110.0, 120.0, 200.0, 250.0);
如果:CGRect r2 = CGRectOffset(r1, -10.0, 20.0);
打印出来:CGRect r2 = CGRectMake(90.0, 120.0, 200.0, 250.0);
3、UIEdgeInsetsInsetRect
CGRect UIEdgeInsetsInsetRect (CGRect rect, UIEdgeInsets insets)
4、NSMakeRange
CGRange NSMakeRange (NSUInteger loc, NSUInteger len)
该结构体loc是location的缩写,是起点的意思,下标从0开始,len是length的缩写,是长度的意思
NSString *str = @"HelloWorld";
str = [str substringWithRange:NSMakeRange(2, 3)];
打印出来str = @"llo";
5、UIEdgeInsets
UIEdgeInsets UIEdgeInsets(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right);
该结构体里面有四个参数,分别是:top, left, bottom, right. 这四个参数表示距离上边界, 左边界, 下边界, 右边界的距离
这四个参数的值可以为正值,也可以为负值. 拿left举例
left = 10; // 代表以当前位置为基准,向右移动10个像素 left = -10; // 代表以当前位置为基准,向左移动10个像素