美文网首页iOS程序猿iOS Developerios实用开发技巧
听说你想找一个可以自定义的相机demo,最好还可以自定义裁剪

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

作者: 敲代码的树懒 | 来源:发表于2016-10-19 16:21 被阅读1085次
开发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
使用过程中,有任何问题,欢迎大家评论

相关文章

网友评论

  • 洁简:问一下为何要使用麦克风,使用麦克风后相机拍照声音可以根据音量自增自减. 还有前置摄像头拍出来的是镜像模式怎么改.
  • 十一岁的加重:用了一个第三方
  • iOS之星:非常感谢大神你的分享, 但是我用大神你的框架有个问题,就是刚装运行的时候,调用系统相机时,会弹出"使用麦克风"这个弹框, 怎么把这个弹框去掉呢
    iOS之星:@敲代码的树懒 好的, 感谢大神. 期待
    敲代码的树懒:sorry,目前的版本,暂时不能取消使用麦克风这个弹框,现在工作有点忙,等忙完了,我修改一下,保持关注
  • 042a0e1be73f:你好,请问点击拍照按钮是没有拍照声音的,这个怎么改?
    还有手动对焦的方框是长方形的,怎么变成正方形的?
    敲代码的树懒:默认是有声音的吧,你是不是静音状态下拍照了
  • DDDDeveloper:你好,能不能设置默认裁剪框大小?
  • 男人宫:如果再加上从相册中获取照片的截取就完美了
    敲代码的树懒:你可以单独使用TOCropViewController这个类,它是负责照片裁剪的
  • LX950124:_captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:self.session];这句话在iOS 10下会崩溃,急问博主怎么解决啊
    男人宫:@LX950124 加隐私权限没
  • KennyMcCormick:大神,请问gif用什么转的
    KennyMcCormick:@敲代码的树懒
    好吧,最后一点看到箭头了
    敲代码的树懒:@vitaminbat 用LICEcap录的
  • 素酥:大神请问下。。我想在截图上面加涂鸦是如何加和。。求教。。或者留个联系方式。。我们可以聊下嘛
    素酥:@敲代码的树懒 我先尝试下
    素酥:@敲代码的树懒 实在剪切的view上面加绘画的功能?
    敲代码的树懒:@素酥 你可以在我裁剪的view上面加个绘图到功能,把照片拖拽的手势先给禁止了
  • 鹿零9:可以cocoa pods导入吗?大神。。 :anguished:
  • 潮人花钱不用钱:能大致说下原理就更好啦 :grin:
    敲代码的树懒:@胶片的味道 随后补上原理
  • 学_iOS:66666

本文标题:听说你想找一个可以自定义的相机demo,最好还可以自定义裁剪

本文链接:https://www.haomeiwen.com/subject/wcexuttx.html