Qual è il raggio dell'angolo iPhone X definitivo?

8

Ho fatto esperimenti e non ho trovato alcun raggio angolare conclusivo per l'iPhone X.

Usando Xcode, ho creato un cerchio con una larghezza e una lunghezza di 80 (quindi raggio 40) e l'ho messo nell'angolo in alto a sinistra dell'iPhone X (quindi xey sono zero), c'è un piccolo spazio bianco tra il cerchio e il bordo dello schermo, che puoi vedere qui:

Ho anche provato un altro metodo, facendo questo con un pulsante:

button.frame.size.height = 812
button.frame.size.width = 375
button.layer.cornerRadius = 40
button.center = self.view.center

Con questo mi rimane:

Quindi la domanda è, qual è il raggio dell'angolo reale? O cosa sta succedendo con Xcode?

    
posta Christopher Cruttenden 28.01.2018 - 00:09
fonte

2 risposte

11

Gli angoli iPhone X non hanno un raggio angolare definitivo. Non sono archi normali, sono " angoli continui ".

Non puoi replicarli con un semplice .cornerRadius e non puoi nemmeno utilizzare gli angoli continui di Apple, poiché si tratta di un'API privata.

CALayer on iOS 11 has a private "continuousCorners" property, which is what powers many rounded corners in SpringBoard – and likely more! Now I'm jealous.

link

Il più vicino che puoi ottenere senza la tua implementazione è il disegno del rettangolo arrotondato di UIBezierPath, che utilizza _continuousRoundedRectBezierPath .

    
risposta data 28.01.2018 - 00:54
fonte
1

Brad Ellis ha un articolo che descrive le curve su iPhone X .

[..] iPhone X rounded screen corners don’t use the classic rounding method where you move in a straight line and then arc using a single quadrant of a circle. Instead, the math is a bit more complicated. Commonly called a squircle, the slope starts sooner, but is more gentle.

Puoi vedere la differenza qui:

    
risposta data 14.09.2018 - 09:28
fonte

Leggi altre domande sui tag