"无法调用CGPointMake'使用类型'((),CGFloat)的参数列表'"收到斯威夫特

时间:2015-05-13 07:36:44

标签: ios swift xcode6

我收到了CGPointMake()

的错误消息
  

/Users/MNurdin/Documents/iOS/RevivalxSwiftSlider/RevivalxSwiftSlider/RangeSlider.swift:66:28:无法调用CGPointMake'使用类型'((),CGFloat)'

的参数列表

我的代码

override func layoutSubviews() {
    _minThumb.center = CGPointMake(self.xForValue(selectedMinimumValue), self.center.y);

}

func xForValue(value: Float){
        return (self.frame.size.width-(_padding*2))*((value - minimumValue) / (maximumValue - minimumValue))+_padding;
    }

selectedMinimumValue是一个浮动。

4 个答案:

答案 0 :(得分:2)

如果你的 xForValue 方法有返回值,你可以尝试强制转换 Float(self.xForValue(selectedMinimumValue))吗?

答案 1 :(得分:2)

CGPoint采用CGFloat而不是Float,你应该在使用

之前进行投射
CGFloat(number)

答案 2 :(得分:2)

两件事: 一,您的xForValue函数没有声明返回类型。它应该是:

func xForValue(value: Float) -> Float {
    return (self.frame.size.width-(_padding*2))*((value - minimumValue) / (maximumValue - minimumValue))+_padding;
}

两个,正如其他回复中所说,CGPointMake需要一个CGFloat,所以你需要让xForValue返回一个CGFloat,或者像其他答案所说的那样投出它。

答案 3 :(得分:0)

你必须把它投射到CGFloat

_minThumb.center = CGPointMake(CGFloat(self.xForValue(selectedMinimumValue)), self.center.y);