拍照

     // MARK: - 拍照
     func fromPhotograph()
     {
         if UIImagePickerController.isSourceTypeAvailable(.Camera)
         {
             //创建图片控制器
             let picker = UIImagePickerController()

             //设置代理
             picker.delegate = self

             //设置来源
             picker.sourceType = UIImagePickerControllerSourceType.Camera

             //设置镜头
             if UIImagePickerController.isCameraDeviceAvailable(UIImagePickerControllerCameraDevice.Front)
             {
                 picker.cameraDevice = UIImagePickerControllerCameraDevice.Front
             }

             //设置闪光灯
             picker.cameraFlashMode = UIImagePickerControllerCameraFlashMode.On

             //允许编辑
             picker.allowsEditing = true;

             //打开相机
             self.presentViewController(picker, animated: true, completion: { () -> Void in

             })

         }
         else
         {
             let aler = UIAlertView(title: "找不到相机!", message: nil, delegate: nil, cancelButtonTitle: "确定")
             aler.show()
         }
     }

     // MARK: - UIImagePickerControllerDelegate

     //选择图片成功之后代理
     func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject])
     {
         //查看info对象
         println(info)

         //获取选择的原图
 //        let image = info[UIImagePickerControllerOriginalImage] as UIImage

         //2015年5月2后修改
         let image = info[UIImagePickerControllerOriginalImage] as! UIImage

         //赋值,图片视图显示图片
         picView.image = image

         //图片控制器退出
         picker.dismissViewControllerAnimated(true, completion: { () -> Void in

         })
     }

     //取消图片控制器代理
     func imagePickerControllerDidCancel(picker: UIImagePickerController)
     {
         //图片控制器退出
         picker.dismissViewControllerAnimated(true, completion: { () -> Void in

         })
     }

     // MARK: - UIActionSheetDelegate
     func actionSheet(actionSheet: UIActionSheet, clickedButtonAtIndex buttonIndex: Int)
     {
         if buttonIndex != actionSheet.cancelButtonIndex
         {
               //从相册选
             {
                 self.fromAlbum()
             } //拍照
             {
                 self.fromPhotograph()
             }
         }
     }
 

ios开发——实用技术篇Swift篇&拍照的更多相关文章

  1. ios开发——实用技术篇Swift篇&播放MP3

    播放MP3 // MARK: - 播放MP3 /*----- mp3 ------*/ //定时器- func updateTime() { //获取音频播放器播放的进度,单位秒 var cuTime ...

  2. ios开发——实用技术篇Swift篇&照片选择

    照片选择 // MARK: - 选择照片 /*----- 选择照片 ------*/ @IBAction func addImageButtonClick() { let actionSheet = ...

  3. ios开发——实用技术篇Swift篇&地址薄、短信、邮件

    //返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...

  4. ios开发——实用技术篇Swift篇&系统声音

    系统声音 // MARK: - 系统声音 /*----- 系统声音 ------*/ @IBAction func systemSound() { //建立的SystemSoundID对象 var s ...

  5. ios开发——实用技术篇Swift篇&视频

    视频 // MARK: - 播放视频 /*----- 播放视频 ------*/ func moviePlayerPreloadFinish(notification:NSNotification) ...

  6. ios开发——实用技术篇Swift篇&录音

    录音 // MARK: - 录音 /*----- 录音 ------*/ var recorder:AVAudioRecorder? //录音器 var player:AVAudioPlayer? / ...

  7. ios开发——实用技术篇Swift篇&加速计和陀螺仪

    加速计和陀螺仪 //返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnim ...

  8. ios开发——实用技术篇Swift篇&多点触摸与手势识别

    多点触摸与手势识别 //点击事件 var atap = UITapGestureRecognizer(target: self, action: "tapDo:") self.vi ...

  9. ios开发——实用技术篇OC篇&iOS的主要框架

    iOS的主要框架         阅读目录 Foundation框架为所有的应用程序提供基本系统服务 UIKit框架提供创建基于触摸用户界面的类 Core Data框架管着理应用程序数据模型 Core ...

随机推荐

  1. Careerup上的简历模板

    So this is what a GOOD resume look like http://www.careercup.com/resume (需FQ)

  2. 设计模式 命令-Command

    命令-Command 当要向不同类的对象发出相同的请求时,可以将接收者和他的动作封装进一个命令对象.这样调用者只和命令产生依赖.而不会和众多的接收者发生依赖. Head First例子 要设计一款遥控 ...

  3. 初识HTTP 1.1与HTTP 1.0

    HTTP 1.1与HTTP 1.0的比较 一个WEB站点每天可能要接收到上百万的用户请求,为了提高系统的效率,HTTP 1.0规定浏览器与服务器只保持短暂的连接,浏览器的每次请求都需要与服务器建立一个 ...

  4. 通过VMware Tools 将主机windows的目录共享给linux虚拟机

    之前有写过 本地虚拟机挂载windows共享目录搭建开发环境 这篇,里面讲通过使用samba来实现网络共享 最近发现其实完全不用这么麻烦,VMware tools就可以帮助我们轻松的共享文件夹 这里引 ...

  5. Java基础 —— 概述

    Java语言: JDK(Java Development Kit)开发工具包,提供Java的开发环境和运行环境 --> 适合于开发 JRE(Java Runtime Environment)Ja ...

  6. 第三百二十九天 how can I 坚持

    今天莫名其妙的烦,,都是上午搞电脑搞的,好乱,心情很差,又感觉有那么多事. 希望周六不要加班啊.很烦,不想加班. 貌似事情也不是很多.但是为什么会感觉乱七八糟的呢,力不从心的感觉,是能力不行吗. 晚上 ...

  7. C++11初始化列表

    [C++11之初始化列表] 在C++03中,在严格遵守POD的定义和限制条件的结构及类型上可以使用初始化列表(initializer list),构想是结构或是数组能够依据成员在该结构内定义的顺序通过 ...

  8. 在PhpStorm9中与Pi的xdebug进行调试

    PI的配置参考 http://www.cnblogs.com/yondy/archive/2013/05/01/3052687.html 在PhpStorm 9.0中参考下面的截图进行配置 配置完成以 ...

  9. How Tomcat Works(四)

    Servlet容器有两个主要的模块,即连接器(connector)与容器(container),本文接下来创建一个连接器来增强前面文章中的应用程序的功能,以一种更优雅的方式来创建request对象和r ...

  10. magento目录结构精编版

    1 /app – 程序根目录 2 3 /app/etc – 全局配置文件目录 4 5 /app/code – 所有模块安装其模型和控制器的目录 6 7 /app/code/core – 核心代码或经过 ...