Sobes.tech
Junior — Middle

Quais são as diferenças entre as propriedades Frame e Bounds na interface gráfica?

sobes.tech IA

Resposta da IA

No iOS, UIView tem duas propriedades importantes para a posição e tamanhos: frame e bounds.

  • frame é um retângulo que define a posição e o tamanho da visualização nas coordenadas do seu superview (visualização pai). Ou seja, frame.origin é um ponto em relação ao pai.

  • bounds é um retângulo que define as dimensões internas e as coordenadas da própria visualização. Normalmente, bounds.origin é (0,0), e bounds.size é o tamanho da visualização.

Exemplo: Se um UIView tem um frame com origem (50, 100) e tamanho (200, 100), ele está localizado a 50 no X e 100 no Y em relação ao pai. bounds provavelmente terá uma origem (0,0) e um tamanho (200, 100), que descreve o sistema de coordenadas interno da visualização.

Assim, frame é responsável pela posição e tamanho no sistema de coordenadas do pai, enquanto bounds é responsável pelo sistema de coordenadas interno e tamanho da própria visualização.