2017-11-14 1 views
1

Mit iOS 11 haben wir jetzt CACornerMask und die maskedCorners Eigenschaft auf CALayers. Allerdings kann ich in Objective-C nicht mehrere Ecken gleichzeitig runden lassen.Verwendung von CACornerMask mit Objective-C

Die rasche Umsetzung ist:

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

Aber in Objective-C dies nicht funktioniert:

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

Ich denke, das liegt daran, dass Swift ist ein OptionSetType verwenden, aber ich weiß nicht, was das Objective-C entspricht dem.

Hat jemand erfolgreich mehrere maskierte Ecken mit Objective-C verwendet? Vielen Dank im Voraus für Ihre Hilfe.

Antwort

5

In Objective-C benötigen Sie bitweise OR (|) verwenden, um die Werte zu kombinieren:

view.layer.maskedCorners = kCALayerMinXMinYCorner | kCALayerMaxXMinYCorner; 
+0

Ah, das war es. Vielen Dank! – Seslyn

+1

@Seslyn, wenn dies Ihre Frage beantwortet, klicken Sie bitte auf das Häkchen neben der Antwort, um es zu akzeptieren. –

Verwandte Themen