[swift] 앱 런치 이미지를 불러오는 동안 로딩 인디케이터 추가하는 방법

앱을 실행할 때, 앱 런치 이미지가 화면에 나타날 때까지 시간이 걸릴 수 있습니다. 이때, 로딩 인디케이터를 추가하여 사용자에게 앱이 로딩 중임을 알려줄 수 있습니다. 이번 포스트에서는 Swift로 앱 런치 이미지를 불러오는 동안 로딩 인디케이터를 추가하는 방법을 알아보겠습니다.

1. 인디케이터 준비하기

먼저 인디케이터를 준비해야 합니다. UIActivityIndicatorView 클래스를 사용하여 인디케이터를 생성할 수 있습니다. 다음 코드를 사용하여 인디케이터를 생성합니다.

let indicatorView = UIActivityIndicatorView(style: .whiteLarge)
indicatorView.color = .gray
indicatorView.center = view.center

위 코드에서 style 속성을 통해 인디케이터의 스타일을 설정할 수 있습니다. .whiteLarge 스타일을 사용하면 크기가 큰 흰색 인디케이터를 생성할 수 있습니다. .gray 속성은 인디케이터의 원을 회색으로 설정합니다.

2. 앱 런치 이미지 불러오기

앱이 실행될 때, 앱 런치 이미지를 불러올 때까지 시간이 걸릴 수 있습니다. 이때 앱 런치 이미지를 불러오는 코드를 작성합니다. 예를 들어, launchImage라는 메서드를 만들어서 앱 런치 이미지를 불러올 수 있습니다.

func loadLaunchImage() {
    // 앱 런치 이미지를 불러오는 코드 작성
}

3. 앱 런치 이미지 로딩 인디케이터 추가하기

이제 인디케이터를 앱 런치 이미지 로딩 중에 화면에 추가합니다. loadLaunchImage 메서드 내부에서 인디케이터를 화면에 추가하고, 앱 런치 이미지 로드가 완료되었을 때 인디케이터를 제거하는 코드를 작성합니다.

func loadLaunchImage() {
    let indicatorView = UIActivityIndicatorView(style: .whiteLarge)
    indicatorView.color = .gray
    indicatorView.center = view.center
    
    view.addSubview(indicatorView)
    indicatorView.startAnimating()
    
    // 앱 런치 이미지를 불러오는 코드 작성
    
    indicatorView.stopAnimating()
    indicatorView.removeFromSuperview()
}

위 코드에서 view.addSubview(indicatorView)를 통해 인디케이터를 화면에 추가하고, indicatorView.startAnimating()을 통해 인디케이터를 시작합니다. 앱 런치 이미지 로딩이 완료되고 나면, indicatorView.stopAnimating()을 호출하여 인디케이터를 정지시키고, indicatorView.removeFromSuperview()를 호출하여 화면에서 인디케이터를 제거합니다.

이제 앱 실행 시 앱 런치 이미지 로딩 동안 로딩 인디케이터가 화면에 나타나게 됩니다. 사용자는 앱이 로딩 중임을 인지할 수 있습니다.

참고 자료