iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 18
0
Software Development

iOS APP開發學習筆記 系列 第 18

DAY18 UIImagePickerController

今天要來介紹的是UIImagePickerController,我們可用它來取得照片,可以從相簿或相機中取得。

首先在Info.plist中加入請求取用相機及相簿的描述
https://ithelp.ithome.com.tw/upload/images/20181102/201075495Dg7SkgEvl.png

接下來回到ViewController.swift中,必須讓ViewController繼承UIImagePickerControllerDelegateUINavigationControllerDelegate這兩項Delegate,接著初始化一個UIImagePickerController並在viewdidload()中做委任。
https://ithelp.ithome.com.tw/upload/images/20181102/20107549aIfKQ6MqiH.png

接著在ButtonAction中加入以下程式碼

@IBAction func choosePhoto(_ sender: UIButton) {
    imagePicker.sourceType = .photoLibrary
    imagePicker.allowsEditing = true
    self.present(imagePicker, animated: true)
}
  • sourceType為取得照片的方法,可選擇.photoLibrary.camera
  • allowsEditing為選取後的照片是否能編緝

最後再利用present()顯示ImagePickerController。

在選擇完照片後要取得必須實作ImagePickerDelegate中的方法didFinishPickingMediaWithInfo

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    // 取得照片
    let image = info[UIImagePickerControllerOriginalImage] as! UIImage
    self.imageView.image = image
    //取得照片後將imagePickercontroller dismiss
    picker.dismiss(animated: true, completion: nil)
}

上一篇
DAY17 UserDefaults
下一篇
DAY19 Timer
系列文
iOS APP開發學習筆記 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言