ios 二元运算符 * 不能应用于 Int 和 CGFloat 类型的操作数

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/31737679/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-31 07:04:56  来源:igfitidea点击:

Binary operator * cannot be applied to operands of type Int and CGFloat

iosswift

提问by lee

ihad type Int. please help me fix that?

有类型Int。请帮我解决这个问题?

enter image description here

在此处输入图片说明

回答by Epic Defeater

Instead of i * self.view.frame.size.width, use CGFloat(i) * self.view.frame.size.width

而不是i * self.view.frame.size.width,使用CGFloat(i) * self.view.frame.size.width

回答by Chetan

You need to type cast i into CGFloat, write your line of code as

您需要在CGFloat 中输入 cast i,将您的代码行写为

var frame: CGRect = CGRectMake(CGFloat(i) * self.view.fram.size.width, self.tutorialHolderView.frame.origin.y, 0, self.tutorialHolderView.frame.size.height)

var frame: CGRect = CGRectMake(CGFloat(i) * self.view.fram.size.width, self.tutorialHolderView.frame.origin.y, 0, self.tutorialHolderView.frame.size.height)