Computer >> 컴퓨터 >  >> 프로그래밍 >> iOS

Swift로 UIImageView 크기 조정하는 방법 완벽 정리

Swift에서 UIImageView 크기 조정하기

iOS 앱 개발 시 이미지가 화면에 원하는 크기로 표시되지 않아 당황한 경험이 있으신가요? Swift에서 UIImageView의 크기를 조정하는 가장 기본적인 방법은 frame 속성을 활용하는 것입니다. 이번 글에서는 간단한 예제를 통해 이미지 뷰의 크기를 조절하는 과정을 단계별로 살펴보겠습니다.

1단계: 프로젝트 준비하기

  • Xcode에서 새로운 빈 프로젝트를 생성합니다.
  • 스토리보드에 UIImageView를 추가합니다.
  • 추가한 이미지 뷰의 아울렛(Outlet)을 ViewController와 연결합니다.
  • 프로젝트에 이미지 파일을 추가하고, 해당 이미지를 이미지 뷰에 할당합니다.

여기까지 완료한 후 앱을 실행하면 화면은 대략 다음과 같이 나타납니다.

Swift로 UIImageView 크기 조정하는 방법 완벽 정리

2단계: 크기 조정 코드 작성하기

이제 이미지 뷰의 크기를 조정하는 코드를 추가해 보겠습니다. 아래 코드를 viewWillLayoutSubviews() 메서드 안에 작성합니다.

override func viewWillLayoutSubviews() {
    let frame = CGRect(x: 10, y: 10, width: self.view.frame.width - 20, height: 300)
    self.imgView.frame = frame
}

코드 설명

viewWillLayoutSubviews()는 뷰의 서브뷰들이 레이아웃되기 직전에 호출되는 메서드로, 프레임을 직접 설정하기에 적합한 위치입니다. 위 코드에서는 다음과 같은 작업을 수행합니다.

  • x: 10, y: 10 — 화면 좌측 상단에서 각각 10포인트씩 여백을 두고 이미지 뷰를 배치합니다.
  • width: self.view.frame.width - 20 — 부모 뷰의 전체 너비에서 좌우 여백 20포인트를 뺀 값을 너비로 지정하여, 어떤 기기에서도 화면에 꽉 차게 표시됩니다.
  • height: 300 — 이미지 뷰의 높이를 300포인트로 고정합니다.

실행 결과 확인하기

코드를 실행하면 이미지 뷰가 지정한 프레임에 맞게 조정된 것을 기기 화면에서 확인할 수 있습니다.

Swift로 UIImageView 크기 조정하는 방법 완벽 정리

추가 팁: Auto Layout과 함께 사용하기

frame을 직접 설정하는 방식은 간단하지만, 오토레이아웃(Auto Layout)을 사용하는 프로젝트에서는 제약 조건(Constraints)과 충돌할 수 있습니다. 인터페이스 빌더에서 오토레이아웃을 적용했다면, 코드로 크기를 조정할 때 translatesAutoresizingMaskIntoConstraints = false 설정 여부를 반드시 확인하세요. 또한 이미지가 뷰 크기에 맞게 늘어나거나 잘리지 않도록 contentMode 속성(예: .scaleAspectFit)을 함께 설정하면 더욱 깔끔한 결과를 얻을 수 있습니다.