Sobes.tech
Junior

Jaka jest różnica między frame a bounds w iOS?

sobes.tech AI

Odpowiedź od AI

W iOS, UIView ma dwa ważne właściwości do pracy z współrzędnymi — frame i bounds.

  • frame to prostokąt opisujący położenie i rozmiar w układzie współrzędnych superview (rodzica). To znaczy, frame.origin to współrzędne w przestrzeni rodzica.

  • bounds to prostokąt opisujący wewnętrzne współrzędne samego widoku. Zazwyczaj bounds.origin jest równy (0,0), a rozmiar jest zgodny z frame.size. bounds określa, jak zawartość widoku jest rozmieszczona wewnątrz niego.

Przykład: Jeśli UIView ma frame z origin (50, 100) i rozmiarem (200, 100), jest położony na 50 w osi X i 100 w osi Y względem rodzica. Jego bounds zwykle będzie origin (0,0) i rozmiar (200,100), czyli wewnętrzne współrzędne widoku.

W ten sposób:

  • frame — pozycja i rozmiar względem rodzica.
  • bounds — współrzędne i rozmiar wewnątrz samego widoku.