swift:表达式类型不明确,执行失败

时间:2016-06-19 16:02:36

标签: xcode swift swift2

任何人都可以帮助我使这段代码与swift 2兼容

var image: UIImage? {
        didSet {
            var corners: UIRectCorner = .TopRight | .BottomRight
            imageView.image = image!.imageByScalingAndCroppingForSize(bounds.size).imageWithRoundedCornersSize(20, corners: corners)
        }
    }

并谢谢

1 个答案:

答案 0 :(得分:0)

在Swift 2.0中,使用位掩码完成的许多事情已被删除,并且这些类型已更改为符合OptionSetType协议,如UIRectCorner

public struct UIRectCorner : OptionSetType

因此,您可以使用union函数,而不是二元运算符' |',如下所示:

var image: UIImage? {
    didSet {
        var corners: UIRectCorner = UIRectCorner.TopRight.union(UIRectCorner.BottomRight)
        imageView.image = image!.imageByScalingAndCroppingForSize(bounds.size).imageWithRoundedCornersSize(20, corners: corners)
    }
}