Sobes.tech
Junior — Middle

¿Existen diferencias entre las propiedades Frame y Bounds en un elemento gráfico?

sobes.tech AI

Respuesta de la IA

En iOS, los elementos gráficos (UIView) tienen propiedades frame y bounds que describen cosas diferentes:

  • frame: es un rectángulo que describe la posición y tamaño del elemento en las coordenadas de su supervista (vista padre). Es decir, frame.origin es la posición relativa al padre.

  • bounds: es un rectángulo que describe las coordenadas internas del propio elemento. Normalmente, bounds.origin es (0,0), y el tamaño coincide con el tamaño del elemento.

Ejemplo:

Si mueves el elemento, cambia su frame.origin. Si cambias bounds, por ejemplo, desplazando su origin, el contenido del elemento se moverá dentro de él, pero el elemento en sí permanecerá en su lugar.

Por lo tanto, frame se encarga de la posición y tamaño en el sistema de coordenadas del padre, y bounds del sistema de coordenadas interno del propio elemento.