Bouns: 뷰의 위치가 뷰 자신의 좌표계에 의해 결정된다.
Frame: 뷰의 위치가 부모뷰에 의해 결정된다.
Frame
Frame은 뷰의 좌표가 부모뷰를 기준으로 결정된다.
Bounds
Bouns는 본인의 좌표계에 의해 위치가 정해지기 때문에 어느 위치에 있던 (0, 0)을 유지한다.
왜 굳이?
이유를 알기 위해 Frame을 이해해야한다.
Frame은 단순히 만드려는 뷰를 나타내는 것이 아니라 만드려는 뷰를 감싸는 사각형 모양의 뷰이다. 그리고 Frame의 좌표와 크기도 이렇게 감싸는 사각형의 좌표와 크기를 나타낸다.
Frame은 감싸고 있는 뷰가 회전한다면 그에 맞춰 크기와 좌표가 바뀌게된다.
하지만 Bounds는 본인의 크기와 좌표 (0, 0)을 유지하게 된다.
용도의 차이
- Frame: 좌표를 기준으로 움직이는 애니메이션에 사용되기 적합하다 Frame은 뷰가 회전하면 Frame이 그에 맞춰 커지기 때문이다.
- Bounds: 화전하는 뷰의 Width나 Height을 알기에 적합하다.