Sobes.tech
Junior

Qual è la differenza tra frame e bounds in iOS?

sobes.tech AI

Risposta dell'AI

In iOS, UIView ha due proprietà importanti per lavorare con le coordinate: frame e bounds.

  • frame è un rettangolo che descrive la posizione e la dimensione nel sistema di coordinate del superview (vista genitore). Ovvero, frame.origin sono le coordinate nello spazio del genitore.

  • bounds è un rettangolo che descrive le coordinate interne della vista stessa. Di solito, bounds.origin è (0,0), e la dimensione corrisponde a frame.size. bounds determina come il contenuto della vista viene disposto al suo interno.

Esempio: Se una UIView ha un frame con origine (50, 100) e dimensione (200, 100), si trova a 50 lungo X e 100 lungo Y rispetto al genitore. Il suo bounds sarà di solito origine (0,0) e dimensione (200,100), cioè le coordinate interne della vista.

Pertanto:

  • frame — posizione e dimensione rispetto al genitore.
  • bounds — coordinate e dimensione all’interno della vista stessa.