[swift] Swift DeviceKit을 이용한 디바이스 회전 여부 확인하기

iOS 애플리케이션을 개발할 때, 디바이스의 회전 여부를 확인해야 하는 경우가 있습니다. 예를 들어, 특정 화면에서 디바이스의 회전 여부에 따라 레이아웃을 다르게 구성하거나, 회전에 따른 작업을 수행해야 할 때가 있습니다.

Swift 언어를 사용하여 디바이스의 회전 여부를 확인하기 위해 DeviceKit이라는 라이브러리를 사용할 수 있습니다. DeviceKit은 iOS 디바이스와 관련된 다양한 정보를 제공하는 유용한 도구입니다. 이를 사용하여 디바이스의 회전 여부를 간단하게 확인할 수 있습니다.

DeviceKit 설치하기

DeviceKit을 사용하기 위해서는 먼저 프로젝트에 해당 라이브러리를 추가해야 합니다. CocoaPods를 사용하여 간단하게 설치할 수 있습니다. 프로젝트의 Podfile에 다음과 같이 추가해주고, pod install 명령을 실행합니다.

target 'YourProjectName' do
  use_frameworks!
  pod 'DeviceKit'
end

그리고나서 Xcode를 열고 .xcworkspace 파일을 실행하여 프로젝트를 업데이트합니다.

디바이스의 회전 여부 확인하기

DeviceKit을 사용하여 디바이스의 회전 여부를 확인하려면 다음과 같은 단계를 따릅니다.

  1. import DeviceKit 코드를 사용하여 DeviceKit을 임포트합니다.
  2. let orientation = UIDevice.current.orientation 코드를 사용하여 현재 디바이스의 회전 상태를 가져옵니다.
  3. if orientation.isLandscape 코드를 사용하여 현재 회전이 가로 모드인지 확인합니다.
  4. if orientation.isPortrait 코드를 사용하여 현재 회전이 세로 모드인지 확인합니다.

아래는 예시 코드입니다.

import UIKit
import DeviceKit

func checkDeviceOrientation() {
    let orientation = UIDevice.current.orientation
    
    if orientation.isLandscape {
        print("현재 디바이스는 가로 모드입니다.")
    } else if orientation.isPortrait {
        print("현재 디바이스는 세로 모드입니다.")
    }
}

checkDeviceOrientation()

위의 예시 코드에서 checkDeviceOrientation() 함수를 호출하면 현재 디바이스의 회전 상태를 콘솔에 출력합니다.

추가적인 활용

DeviceKit을 사용하면 디바이스의 회전 상태뿐만 아니라 다른 디바이스 정보도 가져올 수 있습니다. 예를 들어, 디바이스의 모델명을 가져오고 싶다면 let deviceModel = Device.current.description을 사용하면 됩니다.

자세한 내용은 DeviceKit의 공식 문서를 참조하시기 바랍니다.

참고 자료