꾸준히 안타치기

지오메트리 리더( 크기와 위치 관련 ) 본문

iOS/SwiftUI

지오메트리 리더( 크기와 위치 관련 )

글자줍기 2023. 3. 6. 14:46
반응형

지오메트리 리더란?

자식뷰에 부모뷰와 기기에 대한 크기 및 좌표계 정보를 전달하는 기능을 수행하는 컨테이너뷰이다.

지오메트리 리더는 크기를 지정하지 않으면, 주어진 공간내에서 최대 크기를 가진다.

 

단순하드코딩을 하면 디바이스별로 다 일일이 사이즈를 맞춰줘야함. 

지오메틀리 리더를 사용하면, 상대적으로 값을 조정할수 있다.  https://www.youtube.com/watch?v=Dlxz_FrsEPY 

 

전체구조를  GeometryReader로 감싸고

가로 사이즈를 지오메트리를 통해 접근하면 - 비율로 설정가능 ( 디바이스마다 비율이 같게 적용)

 

지오메트리 프록시? (191P~) 지오메트리 리더의 레이아웃 정보를 자식뷰에 제공함

  • size
  • safeAreaInsets
  • frame(in:)
  • subscript(anchor:)

Frame 

enum CoordinateSpace {

       case global

       case local

       case named(AnyHashable)

}

global - 화면전체 영역(윈도우의 bounds)을 기준으로 한 좌표 정보 / 전체화면 기준 좌표
local - 지오메트리 이더의 bounds를 기준으로 한 좌표 정보 / 원점(0, 0)
named - 지정한뷰의 원점기준 

Frame (198P ~)

UIkit에서는 제약조건을 설정을 의미 , 스유에서는 액자처럼 콘텐츠를 담고 있는 하나의 뷰이다.

자식뷰가 사용가능한 크기를 제안하기위해 사용된다.

동시에 뷰의 정렬 위치를 결정한다. alignment 

 

반응형

'iOS > SwiftUI' 카테고리의 다른 글

스윗한 swiftUI - List(UIkit의 TableView)  (0) 2023.03.04
Comments