首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从NSString获取CGSize

从NSString获取CGSize
EN

Stack Overflow用户
提问于 2015-06-21 13:17:30
回答 2查看 1.4K关注 0票数 2

在我的web服务响应中,我获得了一个JSON键的值,如下所示:

代码语言:javascript
运行
复制
{
dimensions = "1200, 800";
displayName = "something";
displayNumber = 1;
}

我需要将尺寸字符串转换为CGSize变量,并使用以下代码。我将JSON字典转换为NSDictionary名称wardsDictionary,并执行了以下操作:

代码语言:javascript
运行
复制
NSString *dimensionsString = (NSString *)[wardsDictionary objectForKey:@"dimensions"];
CGSize wardDimensions = CGSizeFromString(dimensionsSizeString);
NSLog(@"the dimensions string: %@",dimensionsString);
NSLog(@"the width: %@ and height:%@", wardDimensions.width, wardDimensions.height);

结果是:

代码语言:javascript
运行
复制
the dimensions string: "1200, 800"
the width: 0.0000 and height:0.0000

现在,我在这里尝试做的是用",“分隔组件,并从中获取CGSize变量。但是,有没有直接实现这一点的好方法呢?

EN

回答 2

Stack Overflow用户

发布于 2015-06-21 13:35:42

问题是CGSizeFromString要求字符串的格式为:"{1200, 800}"您可以将括号附加到任意一侧,或者执行componentsSeparatedByString:@",",然后获取组件的intValue

代码语言:javascript
运行
复制
NSArray *parts = [dimensionsString componentsSeparatedByString:@","];
float width = [parts.firstObject floatValue];
float height = [parts.lastObject floatValue];
CGSize size = CGSizeMake(width, height);
票数 7
EN

Stack Overflow用户

发布于 2015-06-21 13:32:36

如果您可以编辑您的web服务,请将维度键与高度和宽度键分开。然后,您可以轻松地使用这些密钥来创建CGSize

如果不可能,唯一的方法是用",“分隔,并将值分配给CGSizeMake

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30961504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档