如何使用全屏图像ios创建自定义UIImagePickerController

如何使用全屏图像ios创建自定义UIImagePickerController,第1张

概述我有一个简单的UI ImagePickerController,它将使用相机拍照,但有几件事我希望它做: >拥有自定义相机用户界面 >采用全屏而不是480×640(如果是4英寸手机) 这是我显示UIImagePickerController的代码: - (IBAction)pick:(id)sender { NSLog(@"abc"); picker = [[UIImagePick 我有一个简单的UI ImagePickerController,它将使用相机拍照,但有几件事我希望它做:

>拥有自定义相机用户界面
>采用全屏而不是480×640(如果是4英寸手机)

这是我显示UIImagePickerController的代码:

- (IBAction)pick:(ID)sender {    NSLog(@"abc");    picker = [[UIImagePickerController alloc] init];    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {        [picker setSourceType:UIImagePickerControllerSourceTypeCamera];    } else {        [picker setSourceType:UIImagePickerControllerSourceTypePhotolibrary];    }    [picker setDelegate:self];    [self presentVIEwController:picker animated:YES completion:nil];}

这是为了拍摄图像时:

- (voID)imagePickerController:(UIImagePickerController *)picker dIDFinishPickingMediawithInfo:(NSDictionary *)info {    [self dismissVIEwControllerAnimated:YES completion:nil];    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalimage];    [imageVIEw setimage:image];}

我该怎么做呢?

谢谢

解决方法 对于第一个项目点,我认为您可以使用UIImagePickerController对象的cameraOverlayVIEw属性在选择器默认界面上添加自定义UI:
- (IBAction)pick:(ID)sender {    NSLog(@"abc");    picker = [[UIImagePickerController alloc] init];    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {        [picker setSourceType:UIImagePickerControllerSourceTypeCamera];    } else {        [picker setSourceType:UIImagePickerControllerSourceTypePhotolibrary];    }    // Add here your custom UI here    [picker setCameraOverlayVIEw:self.customCameraOverlayVIEw];    [picker setDelegate:self];    [self presentVIEwController:picker animated:YES completion:nil];}

编辑

我测试了UIImagePickerController并返回带有全尺寸的图像(PixelXDimension和PixelYDimension):

UIImagePickerControllerMediaMetadata =     {        DPIHeight = 72;        DPIWIDth = 72;        OrIEntation = 6;        "{Exif}" =         {            ApertureValue = "2.526068811667588";            BrightnessValue = "-0.5779073354035674";            colorSpace = 1;            DateTimeDigitized = "2013:04:07 22:30:03";            DateTimeOriginal = "2013:04:07 22:30:03";            ExposureMode = 0;            ExposureProgram = 2;            ExposureTime = "0.05882352941176471";            FNumber = "2.4";            Flash = 24;            FocalLenIn35mmFilm = 35;            FocalLength = "4.28";            ISOSpeedratings =             (                800            );            MeteringMode = 3;            PixelXDimension = 3264;            PixelYDimension = 2448;            SceneType = 1;            SensingMethod = 2;            ShutterSpeedValue = "4.058893689053568";            SubjectArea =             (                1874,1478,610,612            );            WhiteBalance = 0;        };        "{TIFF}" =         {            DateTime = "2013:04:07 22:30:03";            Make = Apple;            Model = "iPhone 4S";            Software = "6.1.3";            XResolution = 72;            YResolution = 72;        };    };

编辑

您还可以将图像视图设置为内容模式以调整容器视图的大小并使其适合:

- (voID)imagePickerController:(UIImagePickerController *)picker dIDFinishPickingMediawithInfo:(NSDictionary *)info {    [self dismissVIEwControllerAnimated:YES completion:nil];    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalimage];    [imageVIEw setContentMode:UIVIEwContentModeScaleAspectFill];    [imageVIEw setimage:image];}

然后根据需要在您查看控制器时使用自动布局或自动调整大小来考虑设备屏幕(4英寸或不是4英寸).

总结

以上是内存溢出为你收集整理的如何使用全屏图像ios创建自定义UIImagePickerController全部内容,希望文章能够帮你解决如何使用全屏图像ios创建自定义UIImagePickerController所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1114456.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存