• 听说你想找一个可以自定义的相机demo,最好还可以自定义裁剪


    开发iOS应用的过程中,很多情景都要调用相机,大多数初学开发者都是采用的苹果提供的系统相机的方法。
       UIImagePickerController *imagePickerController =  [[UIImagePickerController alloc] init];
       imagePickerController.delegate = self;
       imagePickerController.allowsEditing = YES;
       imagePickerController.sourceType = sourceType;
       [self presentViewController:imagePickerController animated:YES completion:^{}];
    
    头文件要遵守协议方法,
           <UIImagePickerControllerDelegate, UINavigationControllerDelegate>
    

    然后在下这个代理方法了里面获取拍照以后的照片。

    //该代理方法仅适用于只选取图片时
    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(nullable NSDictionary<NSString *,id> *)editingInfo
    { NSLog(@"选择完毕----image:%@-----info:%@",image,editingInfo);
    }

    使用非常的不方便,而且调用系统的相机是不能自定义相机页面的,且如果从一个横屏页面进入系统的相机,就会崩溃报错。
    因为在做一个自定义相机页面的时候,遇到了上面所说的坑,所以就有了下面这个demo,我写的这个相机,采用frame布局,可以随意自定义拍照页面,支持横屏,自定义裁剪。

    git地址https://github.com/wubianxiaoxian/SKFCamera

    使用方法

    在info.plist 里面添加
     Privacy - Microphone Usage Description  使用麦克风
     Privacy - Camera Usage Description      使用相机
    
    • Installation with CocoaPods:pod 'SKFCamera',引入

       #import <SKFCamera.h>  
      
    • 或者下载demo到本地将SKFCamera添加到工程,引入

        #import "SKFCamera.h"
      
    • 按照下面的方法引用相机

        SKFCamera *homec=[[SKFCamera alloc]init];
        __weak typeof(self)myself=self;
        homec.fininshcapture=^(UIImage *ss){
        if (ss) {
            NSLog(@"照片存在");
          //在这里获取裁剪后的照片
            myself.ViewImageview.image=ss;
        }
        } ;
        [self presentViewController:homec animated:NO completion:^{}];}
      

    skfcamera相机录制gifnew.gif

    使用过程中,有任何问题,欢迎大家评论
  • 相关阅读:
    Linux服务器通过rz/sz轻松上传下载文件
    Linux卸载系统自带的JDK
    汉语-词语:恒等
    汉语-词语:女人
    汉语-词语:长远
    汉语-词语:长久
    汉语-词语:短暂
    汉语-词语:当下
    汉语-词语:漫长
    中药:小麦
  • 原文地址:https://www.cnblogs.com/sunkaifeng/p/5978075.html
Copyright © 2020-2023  润新知