Closed 5anniversary closed 3 years ago
Frame의 경우에는 Super View을 기준으로 상대적인 위치와 크기를 나타내는 좌표계입니다. Bounds의 경우에는 상대적인 위치가 아닌 자신만의 좌표 시스템 안에서 위치와 크기를 나타내는 좌표계입니다.
Bounds의 경우에 자신만의 위치계이기 때문에 SuperView의 bounds에 변화를 주었을 때 SubView들이 움직이게 보이는 느낌이 나타나게 됩니다. 흔히 말하는 ScrollView, CollectionView, TableView ContentOffset 이 원리를 사용한 것입니다.
frame: 부모 뷰의 좌표 시스템을 이용해 뷰의 위치와 크기를 조정하는 것!
bounds: 뷰 자체의 좌표 시스템을 가지고 뷰의 위치와 크기를 조정하는 것!
bounds와 frame의 차이점 중에서 가장 눈에 띄는것은!!
좌표 시스템이 누구에 달려있는가가 눈에 띄는데요!!
이런 좌표 시스템에 따라서 화면에 그리게 되는데 제한적인 부분이 있어요
화면에서 이미 그려진 뷰의 위치에서 이동을 할 때
애니메이션을 통해서 뷰에 전환을 주는경우 달라지게 됩니다!!
원점 표현
좌표 이동
크기 표현
발표자: 승호 위드랑 헤이트가 안바낌 내가해봣는데 오늘해봣는데 슈퍼뷰를가지고 로테이트시키면 이동을 시켯어 그럼 이거에의해 frame은 바끼는데 bounds는 그대로야 bounds핵심은 오리진에다가 x,y,넣으면 안움직임
주혁: 안에있는좌표계가 바뀌는걸껄? 현지: 스크롤뷰의 핵심입니다 스크롤을할때 바운즈오리진이바뀜 그 비추는게 이케이케바낌
Frame로테이트하면 뷰전체를 포함하는 영역이 frame
애니메이션할때 쓰는것은? frame이 기본?
https://nsios.tistory.com/78