文档章节

打开系统相册,资源库,相机,选择图片

宁音雨雾
 宁音雨雾
发布于 2016/05/23 16:24
字数 284
阅读 62
收藏 0


Swift/OC-->Demo点此下载

// 拍照
        if buttonIndex == 1 {
            
            /*
             
             .Camera 相机
             .PhotoLibrary 图库
             .Camera 相册
             
             */
            let myBool = UIImagePickerController.isSourceTypeAvailable(.Camera);
            
            if myBool == false {
                
                print("不支持相机");
                
                return;
            }
            
            // 打开相机
            openTheImagePickerController(1);
            
            return;
        }
        
        // 获取本地相册
        if buttonIndex == 2 {
            
            // 打开系统资源库
            openTheImagePickerController(0);
            
            return;
        }

打开资源库,相机,相册

// MARK:
// MARK: 系统资源库,相机,相册

extension <#ViewController#> :UINavigationControllerDelegate,UIImagePickerControllerDelegate  {
    
    // MARK:
    // MARK: 打开系统相册
    /// 打开系统相册
    private func openTheImagePickerController(sourceType: Int) {
        
        // 打开相册
        // ,UINavigationControllerDelegate,UIImagePickerControllerDelegate
        
        let picker = UIImagePickerController();
        
        picker.delegate = self;
        
        // 是否 全屏观看
        picker.allowsEditing = true;

        // 资源库
        if sourceType == 0 {
            
            picker.sourceType = .PhotoLibrary;
        }
        
        // 相机
        if sourceType == 1 {
            
            picker.sourceType = .Camera;
            
        }
        
        // 相册
        if sourceType == 2 {
            
            picker.sourceType = .SavedPhotosAlbum;
            
        }
        
        // 跳转控制器
        presentViewController(picker, animated: true, completion: nil);
        
    }
    
    
    // MARK:
    // MARK: 选择 Choose 调用此方法
    /// 选择 Choose 调用此方法
    
    func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
        
        // 关闭控制器
        picker.dismissViewControllerAnimated(true, completion: nil);
        
        // 获取 图片
        let image = info["UIImagePickerControllerOriginalImage"] as? UIImage ;
        
        
        myImageView.image = image;
        
        /*
         
         此处info 有六个值
         
         * UIImagePickerControllerMediaType; // an NSString UTTypeImage)
         
         * UIImagePickerControllerOriginalImage;  // a UIImage 原始图片
         
         * UIImagePickerControllerEditedImage;    // a UIImage 裁剪后图片
         
         * UIImagePickerControllerCropRect;       // an NSValue (CGRect)
         
         * UIImagePickerControllerMediaURL;       // an NSURL
         
         * UIImagePickerControllerReferenceURL    // an NSURL that references an asset in the AssetsLibrary framework
         
         * UIImagePickerControllerMediaMetadata    // an NSDictionary containing metadata from a captured photo
         */
        
    }
    
    
}

判断是否支持资源库,相机,相册

© 著作权归作者所有

宁音雨雾
粉丝 55
博文 313
码字总数 48841
作品 0
东城
程序员
私信 提问
Android:支持多选的本地相册

前段时间在做一个动态发布功能,需要用到图片上传。一开始直接调用的系统相册和相机,由于系统相机不支持多选,就花点时间做了个本地相册,在此开源下。 先上截图,依次为选择相册界面、相册...

丁佳辉
2015/10/22
3.4K
1
从零开始(3)

( 180 ) 根据系统状态栏判断网络状态 详情请点击此 ( 179 ) 仿微信"个人头像" 详情请点击此 ( 178 ) 从相册获取图片,并获取裁剪后图片(系统自带) 详情请点击此 ( 177 ) iOS打开系统相册显示中...

阴雨音语
2016/05/06
75
0
Android相册自定义--GalleryFinal

GalleryFinal简介 Android相册自定义,包括拍照、图片选择(单选/多选)和裁剪。 为什么要使用GalleryFinal? 拍照/选择图片倒立问题 市场上各种相机和图片浏览器泛滥和各种异常问题 各种手机...

彭建波
2015/10/16
4.6K
0
Unity社交功能开发——图片上传

一、图片上传功能的意义 随着梦幻西游、大话西游、问道等回合制游戏的兴起,手游制作团队越来越重视社交功能的开发。笔者前一篇文章介绍了如何在Unity中加入语音聊天功能,本篇文章将介绍下一...

tj134679258
2016/05/08
0
0
 Android之圆形头像(实现相机拍摄+相册选择+图片裁剪功能)

转载请标明出处https://my.oschina.net/FlyinTang/blog/751595 最近的一些学习心得 功能实现:点击圆形头像之后可以实现相册上传或者开启相机,然后把得到的图片经过剪裁,把剪裁过的图片设置...

FlyinTang
2016/09/26
964
1

没有更多内容

加载失败,请刷新页面

加载更多

从0搭建自己的webpack开发环境(五)

往期回顾: 从0搭建自己的webpack开发环境(一) 从0搭建自己的webpack开发环境(二) 从0搭建自己的webpack开发环境(三) 从0搭建自己的webpack开发环境(四) 前四篇文章我们已经掌握了w...

前端优选
昨天
5
0
docker 构建php-fpm 7.2(swoole) 镜像

mkdir -p ~/mnt/docker/phpmkdir -p ~/mnt/docker/php#下载swoole-2.2.0.tgz安装包到software 下载地址:http://pecl.php.net/package/swoole/2.2.0#创建Dockerfilevim ~/docker/......

Jack088
昨天
5
0
简单工厂

定义:由一个工厂对象决定创建出哪一种产品类的实例 类型:创建型,但不属于GOF23种设计模式 工厂类负责创建的对象比较少 客户端(应用层)只知道传入工厂类的参数,对于如何创建对象,不关心...

东风破2019
昨天
4
0
SSH安全加强两步走

从 OpenSSH 6.2 开始已经支持 SSH 多因素认证,本文就来讲讲如何在 OpenSSH 下启用该特性。 OpenSSH 6.2 以后的版本多了一个配置项 AuthenticationMethods。该配置项可以让 OpenSSH 同时指定...

Linux就该这么学
昨天
7
0
聊聊nacos的TcpSuperSenseProcessor

序 本文主要研究一下nacos的TcpSuperSenseProcessor TcpSuperSenseProcessor nacos-1.1.3/naming/src/main/java/com/alibaba/nacos/naming/healthcheck/TcpSuperSenseProcessor.java @Compon......

go4it
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部