因为CGRect、CGPoint等不是NSObject的子类,因此不能直接添加到数组中,需要先将他们转成NSOject的子类。这时候可以借助NSValue类,先将其转为NSValue就可以添加到数组中了。借助NSValue的几个类方法
[NSValue valueWithCGPoint:<#(CGPoint)#>]
[NSValue valueWithCGRect:<#(CGRect)#>]
然后,将返回的value值加入到数组中即可。
从数组中读取后再通过CGRectValue、CGpointValue方法将值取出来
NSValue *rectValue = [NSValue valueWithCGRect:CGRectZero];
CGRect rect = [rectValue CGRectValue];