Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

<1주차> Bounds 와 Frame 의 차이점을 설명하시오. #1

Closed
5anniversary opened this issue Oct 30, 2020 · 9 comments
Closed

Comments

@5anniversary
Copy link
Collaborator

No description provided.

@5anniversary 5anniversary changed the title Bounds 와 Frame 의 차이점을 설명하시오. <1주차> Bounds 와 Frame 의 차이점을 설명하시오. Oct 30, 2020
@namsoo5
Copy link
Collaborator

namsoo5 commented Nov 2, 2020

@namsoo5 namsoo5 added the 남수 label Nov 2, 2020
@dongminyoon
Copy link
Collaborator

Frame의 경우에는 Super View을 기준으로 상대적인 위치와 크기를 나타내는 좌표계입니다.
Bounds의 경우에는 상대적인 위치가 아닌 자신만의 좌표 시스템 안에서 위치와 크기를 나타내는 좌표계입니다.

Bounds의 경우에 자신만의 위치계이기 때문에 SuperView의 bounds에 변화를 주었을 때 SubView들이 움직이게 보이는 느낌이 나타나게 됩니다. 흔히 말하는 ScrollView, CollectionView, TableView ContentOffset 이 원리를 사용한 것입니다.

@5anniversary
Copy link
Collaborator Author

frame: 부모 뷰의 좌표 시스템을 이용해 뷰의 위치와 크기를 조정하는 것!

bounds: 뷰 자체의 좌표 시스템을 가지고 뷰의 위치와 크기를 조정하는 것!

bounds와 frame의 차이점 중에서 가장 눈에 띄는것은!!

좌표 시스템이 누구에 달려있는가가 눈에 띄는데요!!

이런 좌표 시스템에 따라서 화면에 그리게 되는데 제한적인 부분이 있어요

  1. 화면에서 이미 그려진 뷰의 위치에서 이동을 할 때

  2. 애니메이션을 통해서 뷰에 전환을 주는경우 달라지게 됩니다!!

@Juhyeoklee
Copy link
Collaborator

@khyunjiee
Copy link
Member

@iJoom
Copy link
Collaborator

iJoom commented Nov 6, 2020

@iJoom iJoom added the 인준 label Nov 6, 2020
@choidam
Copy link
Member

choidam commented Nov 6, 2020

  1. 원점 표현
  • frame 은 superView 의 좌표계를 기준으로 원점을 나타냅니다.
  • bound 는 현재 view 의 좌표계를 기준으로 원점을 나타냅니다.

  1. 좌표 이동
  • frame 은 superview 의 좌표계 안에서 표현되므로 원점 좌표를 변경하면 super view 안에서 변화량만큼 view가 이동하는 것처럼 보입니다.
  • bound 는 원점을 이동시키면 실제로 해당 view 가 이동하는 게 아니라 subviews 들이 원점을 이동시킨 만큼 반대 방향으로 이동합니다.
  1. 크기 표현
  • frame 의 size는 view 를 감싸는 사각형 영역의 크기를 나타냅니다.
  • bounds 의 size 는 view 자체의 크기를 나타냅니다. (그래서 회전시키더라도 처음 초기화한 view의 size를 유지합니다.)

@choidam choidam added the label Nov 6, 2020
@elesahich
Copy link
Collaborator

@namsoo5
Copy link
Collaborator

namsoo5 commented Nov 6, 2020

발표자: 승호
위드랑 헤이트가 안바낌 내가해봣는데 오늘해봣는데
슈퍼뷰를가지고 로테이트시키면 이동을 시켯어 그럼 이거에의해 frame은 바끼는데 bounds는 그대로야
bounds핵심은 오리진에다가 x,y,넣으면 안움직임

주혁: 안에있는좌표계가 바뀌는걸껄?
현지: 스크롤뷰의 핵심입니다
스크롤을할때 바운즈오리진이바뀜 그 비추는게 이케이케바낌

Frame로테이트하면 뷰전체를 포함하는 영역이 frame

애니메이션할때 쓰는것은?
frame이 기본?

@namsoo5 namsoo5 closed this as completed Nov 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants