objective-c - 在 objective-c 中创建一个可调整大小的 CGPoints 数组

标签 objective-c arrays vector resizable

我正在尝试在 objective-c 中创建一个可调整大小的 CGPoints 数组。我已经研究过使用 NSMutableArray 但是它似乎不允许调整大小。还有其他我可以使用的东西吗?

谢谢

最佳答案

使用 NSMutableArray,但只需将 CGPoint 结构框在 NSValue 对象中。示例:

CGPoint myPoint = {0,0};
CGPoint anotherPoint = {42, 69};

NSMutableArray * array = [NSMutableArray array];
[array addObject:[NSValue valueWithCGPoint:myPoint]];
[array addObject:[NSValue valueWithCGPoint:anotherPoint]];

CGPoint retrievedPoint = [[array objectAtIndex:0] CGPointValue];

请注意,+valueWithCGPoint:CGPointValue 方法仅适用于 iPhone。但是,如果您需要在 Mac 上使用它,可以使用类似的方法来处理 NSPoint,将 CGPoint 转换为 NSPoint 也很简单(您可以转换或使用 NSPointFromCGPoint())。

关于objective-c - 在 objective-c 中创建一个可调整大小的 CGPoints 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2420333/

相关文章:

ios - 如何设置 Collection View 的搜索栏

Javascript - 从 JSON 对象(数组)中提取数据

arrays - 非法字符串偏移 'option 1'

c++ - std::vectors 是线程安全的吗?

c++ - 从 std::vector 创建 Eigen::Ref

iphone - 无法使用 AVAssetExportSession 修剪视频

ios - OSStatus错误-50(无效参数)AudioQueueNewInput在iOS上录制音频

java - 如何按顺序组织随机值?

C++ 遍历智能指针 vector

iOS 为库编写单元测试