Sobes.tech
Junior — Middle

Care sunt diferențele dintre proprietățile Frame și Bounds în interfața grafică?

sobes.tech AI

Răspuns de la AI

În iOS, UIView are două proprietăți importante pentru poziționare și dimensiuni: frame și bounds.

  • frame este un dreptunghi care definește poziția și dimensiunea vizualizării în coordonatele supervizorului său (vizualizarea părinte). Adică, frame.origin este un punct față de părinte.

  • bounds este un dreptunghi care definește dimensiunile interne și coordonatele vizualizării. De obicei, bounds.origin este (0,0), iar bounds.size este dimensiunea vizualizării.

Exemplu: Dacă un UIView are un frame cu origine (50, 100) și dimensiune (200, 100), atunci este situat la 50 pe X și 100 pe Y față de părinte. bounds probabil va avea o origine (0,0) și o dimensiune (200, 100), ceea ce descrie sistemul de coordonate intern al vizualizării.

Prin urmare, frame se ocupă de poziție și dimensiune în sistemul de coordonate al părintelui, iar bounds de sistemul de coordonate intern și dimensiunea vizualizării în sine.