首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"' CGFloat‘不可转换为'UInt8'“--CGFloat包装问题

"' CGFloat‘不可转换为'UInt8'“--CGFloat包装问题
EN

Stack Overflow用户
提问于 2014-11-28 04:56:19
回答 2查看 498关注 0票数 1
代码语言:javascript
复制
label.position = CGPointMake(self.size.width*0.125, self.size.height-CGFloat(0.15)*self.size.height*_activeEnemiesArray.count)

我看到一个指向self.size.width的错误,上面说

“CGFloat”不能转换为“Double”。

这是合理的,因为CGFloat值和Double值不能相乘,但是当我将0.125转换为CGFloat

代码语言:javascript
复制
label.position = CGPointMake(self.size.width*CGFloat(0.125), self.size.height-0.15*self.size.height*_activeEnemiesArray.count)

我看到一个指向self.size.width的错误,上面说

“CGFloat”不能转换为“UInt8”

这没有任何意义。有没有其他人经历过这种情况,原因可能是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-28 05:28:38

Xcode使您误入歧途--文字不应该真的造成问题,因为一旦其他所有东西都是相同的类型,它们就会根据需要转换为DoubleCGFloat。相反,所发生的事情是在行的最末端有一个Int

代码语言:javascript
复制
... * self.size.height * _activeEnemiesArray.count)

需要将count属性转换为CGFloat,以便与其他属性一起使用:

代码语言:javascript
复制
... * self.size.height * CGFloat(_activeEnemiesArray.count))
票数 1
EN

Stack Overflow用户

发布于 2014-11-28 05:28:20

试试看

代码语言:javascript
复制
self.frame.size.width 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27182148

复制
相关文章

相似问题

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