Notice
Recent Posts
Recent Comments
올해는 머신러닝이다.
swift 카메라 및 갤러리 접근 코드 소스 본문
import UIKit
class ViewController: UIViewController,
UIImagePickerControllerDelegate,
UINavigationControllerDelegate
{
let picker = UIImagePickerController()
@IBOutlet weak var myImageView: UIImageView!
@IBAction func photoFromLibrary(_ sender: UIBarButtonItem) {
picker.allowsEditing = false
picker.sourceType = .photoLibrary
picker.mediaTypes = UIImagePickerController.availableMediaTypes(for: .photoLibrary)!
picker.modalPresentationStyle = .popover
present(picker, animated: true, completion: nil)
picker.popoverPresentationController?.barButtonItem = sender
}
@IBAction func shootPhoto(_ sender: UIBarButtonItem) {
if UIImagePickerController.isSourceTypeAvailable(.camera) {
picker.allowsEditing = false
picker.sourceType = UIImagePickerControllerSourceType.camera
picker.cameraCaptureMode = .photo
picker.modalPresentationStyle = .fullScreen
present(picker,animated: true,completion: nil)
} else {
noCamera()
}
}
func noCamera(){
let alertVC = UIAlertController(
title: "No Camera",
message: "Sorry, this device has no camera",
preferredStyle: .alert)
let okAction = UIAlertAction(
title: "OK",
style:.default,
handler: nil)
alertVC.addAction(okAction)
present(
alertVC,
animated: true,
completion: nil)
}
override func viewDidLoad() {
super.viewDidLoad()
picker.delegate = self
}
//MARK: - Delegates
func imagePickerController(_ picker: UIImagePickerController,
didFinishPickingMediaWithInfo info: [String : AnyObject])
{
var chosenImage = UIImage()
chosenImage = info[UIImagePickerControllerOriginalImage] as! UIImage //2
myImageView.contentMode = .scaleAspectFit //3
myImageView.image = chosenImage //4
dismiss(animated:true, completion: nil) //5
}
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
dismiss(animated: true, completion: nil)
}
}
'IOS > 예제모음' 카테고리의 다른 글
swift 로 몇분전,몇시간전등으로 표기하는 예제 (0) | 2017.05.11 |
---|---|
권한 예제 모음 (0) | 2017.04.25 |
swift 화면 이동 (0) | 2017.04.18 |
IOS 멋진 예제 모음 사이트 (0) | 2017.04.17 |
이미지 체인저를 이용한 소스 (0) | 2017.02.11 |