3

我有这段代码应该返回两个CGFloat值的最小值:

    var boundsSize:CGSize = scrollView.bounds.size
    var imageSize:CGSize = imageView.bounds.size

    var xScale:CGFloat = boundsSize.width / imageSize.width
    var yScale:CGFloat = boundsSize.height / imageSize.height

    var minScale:CGFloat = MIN(xScale, yScale) // this does not work

MIN在 swift 中似乎没有等价物。那么我该怎么做呢?

4

2 回答 2

7

尝试这个:

var minScale = min(xScale, yScale)

min已经在迅速。希望这可以帮助.. :)

min是可变参数函数。它的复位参数是一个可变参数。来自开发者网站:

可变参数接受零个或多个指定类型的值。您使用可变参数来指定在调用函数时可以向参数传递不同数量的输入值。通过在参数类型名称后插入三个句点字符 (...) 来编写可变参数。

了解更多信息。看到这个

于 2014-06-22T06:47:11.490 回答
4

Swift 中的函数是min,所以:

var minScale = min(xScale, yScale)

于 2014-06-22T06:45:55.047 回答