将 CACornerMask 与 Objective-C 一起使用

Using CACornerMask with Objective-C

iOS 11 我们现在有 CACornerMaskmaskedCorners 属性 CALayers。但是我无法在 Objective-C 中同时设置多个角为圆角。

swift 实现是:

view.layer.cornerRadius = 10
view.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMinXMinYCorner]

但是在 Objective-C 这行不通:

view.layer.maskedCorners = @[kCALayerMinXMinYCorner, kCALayerMaxXMinYCorner];

我认为这是因为 Swift 使用的是 OptionSetType 但我不知道 Objective-C 等同于什么。

有没有人能够成功地使用 Objective-C 的多个蒙版角?预先感谢您的帮助。

在 Objective-C 中,您需要使用按位或 (|) 来组合值:

view.layer.maskedCorners = kCALayerMinXMinYCorner | kCALayerMaxXMinYCorner;