[swift] QuickLayout을 사용하여 색칠 앱의 레이아웃 구성하기

이번 글에서는 Swift에서 UI 레이아웃을 구성하기 위해 QuickLayout 라이브러리를 사용하는 방법을 알아보겠습니다. 앞서 말한 색칠 앱에서는 화면에 캔버스가 있고, 색상 선택을 위한 컬러 팔레트가 있을 것입니다. 이 두 가지 컴포넌트의 레이아웃을 QuickLayout을 사용하여 구성해 보겠습니다.

1. QuickLayout 라이브러리 설치

QuickLayout은 Swift에서 UI 레이아웃을 구성하기 위한 간편한 라이브러리입니다. 먼저 프로젝트에 QuickLayout을 설치해야합니다. 이를 위해 다음 명령을 터미널에서 실행합니다:

$ pod install

2. 색칠 앱의 레이아웃 구성하기

2.1 캔버스 뷰의 레이아웃 구성하기

먼저 캔버스 뷰의 레이아웃을 구성해보겠습니다. 캔버스는 전체 화면을 차지하도록 설정하고, 크기를 동적으로 조정할 수 있도록 해야합니다.

import UIKit
import QuickLayout

class CanvasViewController: UIViewController {
    
    private let canvasView = UIView()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 캔버스 뷰를 추가합니다.
        view.addSubview(canvasView)
        
        // QuickLayout을 사용하여 캔버스 뷰의 레이아웃을 구성합니다.
        canvasView.stickToSuperviewEdges()
    }
}

2.2 컬러 팔레트 뷰의 레이아웃 구성하기

이제 컬러 팔레트 뷰의 레이아웃을 구성해보겠습니다. 컬러 팔레트는 캔버스 뷰 아래에 위치하도록 설정하고, 여러 개의 컬러 선택 버튼을 가집니다.

class PaletteViewController: UIViewController {
    
    private let paletteView = UIView()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 팔레트 뷰를 추가합니다.
        view.addSubview(paletteView)
        
        // QuickLayout을 사용하여 팔레트 뷰의 레이아웃을 구성합니다.
        paletteView.stickToBottom(of: self, offset: 16)
        paletteView.horizontalLayout(edgesInset: 16, betweenViews: 8)
        
        // 컬러 선택 버튼을 추가 및 배치합니다.
        for color in colors {
            let button = UIButton()
            button.backgroundColor = color
            paletteView.addSubview(button)
            
            // QuickLayout을 사용하여 버튼의 크기와 위치를 설정합니다.
            button.setSquare(size: 32)
        }
    }
}

3. 실행 결과 확인하기

위에서 구성한 레이아웃을 적용하여 앱을 실행시켜보면, 캔버스와 컬러 팔레트가 화면에 나타나는 것을 확인할 수 있습니다. 캔버스는 화면 전체를 차지하고, 컬러 팔레트는 캔버스 아래에 위치하며 여러 개의 컬러 선택 버튼을 가지고 있습니다.

QuickLayout을 사용하면 UI 레이아웃을 간편하게 구성할 수 있으며, 코드의 가독성을 높일 수 있습니다. 색칠 앱 예제를 통해 QuickLayout 사용 방법을 익히고, 다양한 UI를 구성할 수 있는 능력을 키워보세요.

참고 자료