Swift: alinea las tags de forma progtwigda para diferentes tamaños de pantalla IOS

Soy nuevo en el desarrollo de Swift y ios. Tengo 6 tags y un SKScene horizontal en mi aplicación. Me gustaría alinear esas 6 tags bella y automáticamente. Ahora he corregido las posiciones y la alignment siempre se ve horrible en algún tamaño de pantalla, mientras que bueno en otros.

No he usado storyboards u otros editores charts para build la interfaz de usuario, pero todo se hace en código. Por lo tanto, estoy buscando una solución programática (ejemplos de código) para manejar la alignment.

Si desea ubicarlos en el centro de la pantalla horizontalmente, pero dándoles diferentes posiciones, puede hacer algo como esto para cada label:

label.position = CGPointMake(CGRectGetMidX(self.frame),CGRectGetMaxY(self.frame) * 0.80) 

Para ubicarlos en diferentes posiciones, simplemente multiplíquelo por el máximo y por un número decimal diferente. De esta manera, todas las tags se alinean a lo largo del eje x y aparecen en diferentes posiciones y, como una columna, y aparecerán de esta manera en cada tamaño de pantalla porque están posicionadas con relación al tamaño de la pantalla y no en una position fija .

Puede alinear las tags (digamos en el centro de la pantalla) de esta forma.

 var label1 = UILabel(CGRectMake: 0, 0, 200, 40) label1.center = CGPointMake(UIScreen.mainScreen().bounds.size.width/2, 30) var label2 = UILabel(CGRectMake: 0, 0, 200, 40) label2.center = CGPointMake(UIScreen.mainScreen().bounds.size.width/2, label1.center.y + 30) 

y así. Simplemente haga reference a los límites de la pantalla principal y no a los puntos estáticos para la alignment, de modo que estén centrados en cualquier tamaño de pantalla.

Lo que terminé haciendo fue crear un SKSprite vacío al que incluí SKLabels. Ahora puedo controlar por pixed las distancias entre las tags, pero alineo el sprite de nivel superior en el centro de la pantalla a pesar del tamaño de la pantalla.