Swift 拍照:UIImagePickerController 📷
Swift 是一個非常強大的程式語言,它可以讓開發者輕鬆地開發出各種 App,而其中一個重要的功能就是拍照,在 Swift 中,可以使用 UIImagePickerController 來實現拍照功能。
UIImagePickerController 簡介
UIImagePickerController 是一個 iOS 內建的控制器,它可以讓開發者輕鬆地從相簿或是相機中取得照片,並且可以對照片進行編輯。
使用 UIImagePickerController
要使用 UIImagePickerController,首先需要在 info.plist 中加入 Privacy – Photo Library Usage Description 和 Privacy – Camera Usage Description,以便讓使用者知道 App 將會使用到相簿或是相機,並且獲得使用者的同意。
接著,可以使用以下程式碼來建立 UIImagePickerController:
let imagePicker = UIImagePickerController()
imagePicker.sourceType = .photoLibrary
imagePicker.allowsEditing = true
imagePicker.delegate = self
上面的程式碼會建立一個 UIImagePickerController 的實例,並且設定它的 sourceType 為 photoLibrary,這樣就可以從相簿中取得照片,allowsEditing 則是用來決定使用者是否可以對照片進行編輯,最後,delegate 則是用來指定 UIImagePickerController 的 delegate,以便在使用者選擇完照片後可以做出對應的動作。
接著,可以使用以下程式碼來顯示 UIImagePickerController:
present(imagePicker, animated: true, completion: nil)
最後,在 UIImagePickerController 的 delegate 中,可以使用以下程式碼來取得使用者選擇的照片:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
if let image = info[.editedImage] as? UIImage {
// Use the edited image
} else if let image = info[.originalImage] as? UIImage {
// Use the original image
}
dismiss(animated: true, completion: nil)
}
上面的程式碼會在使用者選擇完照片後執行,它會先檢查使用者是否對照片進行編輯,如果有,則會取得編輯後的照片,如果沒有,則會取得原始的照片,最後,它會將 UIImagePickerController 關閉。
綜上所述,使用 UIImagePickerController 來實現拍照功能是非常簡單的,只需要幾行程式碼就可以完成,而且它也支援對照片進行編輯,因此可以讓開發者輕鬆地開發出各種拍照 App。
推薦閱讀文章
推薦閱讀文章
UIImagePickerController 教學:入門
UIImagePickerController:如何從相機膠卷中選擇照片
Swift 使用 UIImagePickerController 選擇照片
使用 UIImagePickerController 拍照(iOS 教學)
Swift 使用 UIImagePickerController 拍照