Foundation框架之常用结构体

1)  NSRange(location length)

例:@”I LOVE OC” 中 LOVE范围可表示为(location=2 length=4)

NSString *str = @”I love oc”;

NSRange range = [str rangeOfString:@”love”];

或者, NSRange range = NSMakeRange(2,4);

例:查找某个字符串在str中的范围

// 如果找不到,length=0,location=NSNotFound==-1

NSRange range = [str rangeOfString:@"java"];

2)  NSPointCGPoint(x坐标 y坐标)

创建方式:

CGPoint p1 = NSMakePoint(10, 10);

NSPoint p2 = CGPointMake(20, 20);

将结构体转换为字符串:

NSString *str = NSStringFromPoint(p1);

NSLog(@”%@”,str);

表示原点CGPointZero

// CGPointZero == CGPointMake(0, 0)

//使用CGPointZero等的前提是添加CoreGraphics框架

3)  NSSizeCGSize(width height)

创建方式:

NSSize s1 = CGSizeMake(100, 50);

NSSize s2 = NSMakeSize(100, 50);

将结构体转换为字符串:

NSString *str = NSStringFromSize(s1);

NSLog(@”%@”,str);

4)  NSRectCGRect (CGPint CGSize)

创建方式:

CGRect r1 = CGRectMake(0, 0, 100, 50);

CGRect r2 = { {0, 0}, {100, 90}};

CGRect r3 = {p1, s2};

将结构体转换为字符串:

NSString *str = NSStringFromRect(r1);

NSLog(@”%@”,str);

5)  结构体常用函数:

// 使用这些CGPointEqualToPoint、CGRectContainsPoint等函数的前提是添加CoreGraphics框架

// 比较两个点是否相同(x、y)

BOOL b = CGPointEqualToPoint(CGPointMake(10, 10),CGPointMake(10, 10));

//CGRectEqualToRect(<#CGRect rect1#>, <#CGRectrect2#>)

//CGSizeEqualToSize(<#CGSize size1#>, <#CGSizesize2#>)

//判断某个点是否在矩形区域内

BOOL b2 = CGRectContainsPoint(CGRectMake(50, 40, 100, 50),CGPointMake(60, 45));


原文地址:https://www.cnblogs.com/coderkl/p/4320311.html