Auto Layout es un sistema para crear interfaces adaptables a diferentes pantallas mediante el uso de relaciones y constraints entre los elementos de la interfaz. Permite especificar attributes como leading, trailing, top y bottom constraints para posicionar elementos y también height, width y constant constraints para especificar tamaños. Size Classes permite adaptar la interfaz para diferentes tipos y orientaciones de dispositivos usando categorías como Any, Compact y Regular en lugar de verificar el modelo de dispositivo específico.
34. Otros conceptos
• Constraint Priority: prioridad, si dos constraints están en
conflictos el que tiene mayor prioridad gana
• Intrinsic Size: tamaño mínimo de un elemento (view) para
que se vea completamente
• Hugging Priority: cuanto los constraint van a reducir el
taño del elemento hasta tocar su Intrinsic Size
• Compression Resistance Priority: cuando varios elementos
compiten por el espacio y alguno tiene que ser reducido
mas allá de su Intrinsic Size, el que tenga menor prioridad
sera reducido y el de mayor prioridad no lo hará
36. Código para UI (antes)
if (IPHONE4) {
…
} else if (IPHONE 5){
…
} else if (IPHONE6) {
…
} else if (IPHONE6PLUS) {
…
} else if (IPAD) {
…
}
37. Código para UI usando Size
Classes
if (Any) {
…
} else if (Regular) {
…
} else if (Compact) {
…
}
Podemos especificar diferentes orientaciones
usando Horizontal Size Class y Vertical Size Class