Swift 判斷螢幕方向 📱
在開發 iOS App 時,有時候會需要判斷螢幕方向,以便讓 App 可以根據螢幕方向做出不同的動作,例如調整畫面配置,或是做出不同的顯示等等。在 Swift 中,可以使用 UIDevice
類別的 orientation
屬性來取得螢幕方向,並且可以使用 UIDeviceOrientation
列舉來判斷螢幕方向,以下是一個簡單的範例:
if UIDevice.current.orientation == UIDeviceOrientation.portrait {
// 螢幕目前是直立狀態
} else if UIDevice.current.orientation == UIDeviceOrientation.landscapeLeft {
// 螢幕目前是橫向左
} else if UIDevice.current.orientation == UIDeviceOrientation.landscapeRight {
// 螢幕目前是橫向右
}
另外,也可以使用 UIApplication
類別的 statusBarOrientation
屬性來取得螢幕方向,並且可以使用 UIInterfaceOrientation
列舉來判斷螢幕方向,以下是一個簡單的範例:
if UIApplication.shared.statusBarOrientation == UIInterfaceOrientation.portrait {
// 螢幕目前是直立狀態
} else if UIApplication.shared.statusBarOrientation == UIInterfaceOrientation.landscapeLeft {
// 螢幕目前是橫向左
} else if UIApplication.shared.statusBarOrientation == UIInterfaceOrientation.landscapeRight {
// 螢幕目前是橫向右
}
此外,也可以使用 UIViewController
類別的 interfaceOrientation
屬性來取得螢幕方向,以下是一個簡單的範例:
if self.interfaceOrientation == UIInterfaceOrientation.portrait {
// 螢幕目前是直立狀態
} else if self.interfaceOrientation == UIInterfaceOrientation.landscapeLeft {
// 螢幕目前是橫向左
} else if self.interfaceOrientation == UIInterfaceOrientation.landscapeRight {
// 螢幕目前是橫向右
}
總結來說,在 Swift 中可以使用 UIDevice
、UIApplication
和 UIViewController
類別的屬性來取得螢幕方向,並且可以使用 UIDeviceOrientation
和 UIInterfaceOrientation
列舉來判斷螢幕方向,以便讓 App 可以根據螢幕方向做出不同的動作。
推薦閱讀文章
Detecting the Orientation of an iOS Device with Swift
How to Detect Orientation Changes in iOS
How to detect when the orientation changes
Detect Orientation Changes in iOS Tutorial
Swift Programming Tutorial: Detect Orientation Changes</a