Sobes.tech
Junior

Qual é a diferença entre frame e bounds no iOS?

sobes.tech IA

Resposta da IA

No iOS, o UIView tem duas propriedades importantes para trabalhar com coordenadas: frame e bounds.

  • frame é um retângulo que descreve a posição e o tamanho no sistema de coordenadas do superview (vista pai). Ou seja, frame.origin são as coordenadas no espaço do pai.

  • bounds é um retângulo que descreve as coordenadas internas da própria vista. Normalmente, bounds.origin é (0,0), e o tamanho coincide com frame.size. bounds determina como o conteúdo da vista é disposto dentro dela.

Exemplo: Se uma UIView tem um frame com origin (50, 100) e tamanho (200, 100), ela está localizada a 50 em X e 100 em Y em relação ao pai. Seu bounds normalmente será origin (0,0) e tamanho (200,100), ou seja, as coordenadas internas da vista.

Assim:

  • frame — posição e tamanho em relação ao pai.
  • bounds — coordenadas e tamanho dentro da própria vista.