听说你想找一个可以自定义的相机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
使用过程中,有任何问题,欢迎大家评论
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容