Dynamic Font

이세진·2022년 6월 24일
0

iOS

목록 보기
7/46

생성일: 2021년 10월 1일 오후 10:27

위와 같이 이미지 뷰 안에 Label(공인인증서라고 적혀있는 것)을 모든 디바이스마다 일정한 위치에 위치하고자 한다.

이때 첫번째로 중요한 것은 image view를 view에 embed 시켜야한다.(constraint multiplier는 상위뷰와 연관이 있기 때문에 image view와 동일한 사이즈의 view로 감싸야 우리가 원하는 대로 조절할 수 있다.)

이미지를 화면의 중앙에 위치시키고 aspect ratio를 실제 이미지 파일과 같은 비율로 맞추어 준다.

그리고 Label을 위치시켜야 하는데

이렇게 bottom alignment의 Multiplier를 적당히 조절하여 위치시키면 된다.

(top alignment는 Constant가 0일 때는 변경시켜도 변화가생기지 않는다. leading도 마찬가지)

여기까지 하면 다양한 디바이스에서도 이미지안에 Label이 동일한 비율의 위치에 자리잡게 된다.

Label이 디바이스 크기마다 font size가 달라지도록 하기

가장 화면이 큰 디바이스에서 알맞는 최대의 폰트 크기로 설정을 해놓고

Label의 Autoshrink를 설정한다. 이러면 Label의 크기가 변하면 거기에 맞춰 font의 사이즈도 변하게 된다.

그렇다면 Label의 크기가 image의 크기에 맞추어 변하게 해야한다.

Label에서 우클릭한채로 이미지로 드래그하고 Equal Width를 주면 해결된다.

Label이 왼쪽으로 이동하였다면 Eual Width의 multiplier를 조절하여 중앙에 위치시키면 된다.

다른 추가할 label들도 같은 방식으로 배치하면 된다.

최종결과

profile
나중은 결코 오지 않는다.

0개의 댓글