标签: uiimagepickercontroller

UIImagePickerController中的前置摄像头

我正在开发iPad2中的前置摄像头应用程序UIImagePickerController.

当我捕捉到图像时,它显示为从左向右翻转.

我该如何纠正?

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) 
    {
        UIImagePickerController *imgPkr = [[UIImagePickerController alloc] init];
        imgPkr.delegate = self;
        imgPkr.sourceType = UIImagePickerControllerSourceTypeCamera;
        imgPkr.cameraDevice=UIImagePickerControllerCameraDeviceFront;


        UIImageView *anImageView=[[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"select%d.png",val]]];
        anImageView.frame = CGRectMake(0, 0, anImageView.image.size.width, anImageView.image.size.height);
        imgPkr.cameraOverlayView = anImageView;
        [theApp.TabViewControllerObject presentModalViewController:imgPkr animated:YES];
        [imgPkr release];
    }
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiimagepickercontroller ios swift

64
推荐指数
6
解决办法
3万
查看次数

UIImagePickerController并从现有照片中提取EXIF数据

众所周知,UIImagePickerController在选择后不会返回照片的元数据.但是,应用程序商店中的一些应用程序(Mobile Fotos,PixelPipe)似乎能够读取原始文件和存储在其中的EXIF数据,使应用程序能够从所选照片中提取地理数据.

他们似乎是通过从/ private/var/mobile/Media/DCIM/100APPLE /文件夹中读取原始文件并通过EXIF库运行它来完成此操作.

但是,我无法找到一种方法来匹配从UIImagePickerController返回的照片到磁盘上的文件.我已经探索了文件大小,但原始文件是JPEG,而返回的图像是原始UIImage,因此无法知道所选图像的文件大小.

我正在考虑制作一个哈希表并匹配每个图像的前x个像素.虽然这看起来有点过头了,但可能很慢.

有什么建议?

iphone gps cocoa-touch exif uiimagepickercontroller

56
推荐指数
5
解决办法
4万
查看次数

UIImagePickerController没有填充屏幕

截图http://i39.tinypic.com/oiermb.png

我正在为UIImagePickerController添加一个自定义叠加层,并且视图底部有一个持久的黑条.这是我实例化控制器的代码.

- (UIImagePickerController *)imagePicker {
    if (_imagePicker) {
        return _imagePicker;
    }

    _imagePicker = [[UIImagePickerController alloc] init];
    _imagePicker.delegate = self;

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
        _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;

        _imagePicker.showsCameraControls = NO;

        _imagePicker.wantsFullScreenLayout = YES;
        _imagePicker.navigationBarHidden = YES;
        _imagePicker.toolbarHidden = YES;

    } else {
        _imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    }

    return _imagePicker;
}
Run Code Online (Sandbox Code Playgroud)

返回的控制器以模态方式显示,并且当我没有隐藏相机控件时工作正常(即显示全屏).


感谢Ole的建议,我使用了这段代码:

// Resize the camera preview
        _imagePicker.cameraViewTransform = CGAffineTransformMakeScale(1.0, 1.03);
Run Code Online (Sandbox Code Playgroud)

高度增加3%就可以了.当我在屏幕底部添加自定义工具栏时,窗口上不再有可见的黑条.

iphone uiimagepickercontroller

56
推荐指数
7
解决办法
3万
查看次数

UIImagePickerController没有在iOS 8中呈现

是否有其他人UIImagePickerController在iOS 8中遇到问题?下面的方法在iPad上的iOS 7中运行得非常好,但是当我尝试呈现选择器(最后一行)时,我在XCode 6(Beta 3或4)中运行时会出现以下错误.如果重要,那么sourceType的选择来自于在同一个地方呈现的alertView.

Warning: Attempt to present <UIImagePickerController: 0x7c0ae400>  on <CAGUCreateContactViewController: 0x7bf61a00> which is already presenting (null)
Run Code Online (Sandbox Code Playgroud)

打开imagePicker的方法.

- (void)openPhotoPicker:(UIImagePickerControllerSourceType)sourceType
{
    if ([UIImagePickerController isSourceTypeAvailable:sourceType]) {
        NSArray *availableMediaTypes = [UIImagePickerController availableMediaTypesForSourceType:sourceType];
        if ([availableMediaTypes containsObject:(NSString *)kUTTypeImage]) {
            UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
            imagePickerController.modalPresentationStyle = UIModalPresentationFullScreen;
            imagePickerController.sourceType = sourceType;
            imagePickerController.mediaTypes = @[(NSString *)kUTTypeImage];
            imagePickerController.delegate = self;

            self.imagePickerController = imagePickerController;

            if (sourceType == UIImagePickerControllerSourceTypeCamera) {
                [self presentViewController:self.imagePickerController animated:YES completion:nil];
            } else {                    
                if (self.popoverVC) {
                    [self.popoverVC dismissPopoverAnimated:YES];
                    self.popoverVC = …
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller ipad ios ios8

56
推荐指数
4
解决办法
3万
查看次数

无法下标类型'[String:Any]'的值,其索引类型为'UIImagePickerController.InfoKey'

我正在使用Apple的Swift iOS教程.这是一个错误,

无法下标类型'[String:Any]'的值,其索引类型为'UIImagePickerController.InfoKey'

他们定义的功能如下.

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

    // The info dictionary may contain multiple representations of the image. You want to use the original.
    guard let selectedImage = info[UIImagePickerControllerOriginalImage] as? UIImage else {
        fatalError("Expected a dictionary containing an image, but was provided the following: \(info)")
    }

    // Set photoImageView to display the selected image.
    photoImageView.image = selectedImage

    // Dismiss the picker.
    dismiss(animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)

我正在使用Xcode Version 10.0 beta 3,其中包括Swift …

uiimagepickercontroller ios swift

46
推荐指数
5
解决办法
3万
查看次数

iPhone:相机预览叠加

如何UIImageView在相机预览中添加叠加()并处理此操作?

我之前尝试这样做(例如使用UIImagePickerController并将图像添加为子视图)失败了.

iphone camera uiimageview uiimagepickercontroller

43
推荐指数
3
解决办法
3万
查看次数

Swift - UIImagePickerController - 如何使用它?

我正在努力了解它是如何工作的,但对我来说这很难.=)我有1个视图,有一个按钮和一个小的ImageView区域可供预览.该按钮触发imagepickercontroller,UIView将显示选中的图像.没有错误,但图像未显示在UIImageView区域中.

var imagePicker = UIImagePickerController()
@IBOutlet var imagePreview : UIImageView

@IBAction func AddImageButton(sender : AnyObject) {
    imagePicker.modalPresentationStyle = UIModalPresentationStyle.CurrentContext
    imagePicker.delegate = self
    self.presentModalViewController(imagePicker, animated: true)

}
func imagePickerController(picker: UIImagePickerController!, didFinishPickingMediaWithInfo info:NSDictionary!) {
    var tempImage:UIImage = info[UIImagePickerControllerOriginalImage] as UIImage
    imagePreview.image  = tempImage

    self.dismissModalViewControllerAnimated(true)

}

func imagePickerControllerDidCancel(picker: UIImagePickerController!) {

    self.dismissModalViewControllerAnimated(true)
}
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller ios swift

41
推荐指数
5
解决办法
6万
查看次数

相机与自定义视图

我的应用程序使用相机,我想在相机预览中添加叠加.例如,我想在使用相机时使用相框,我也想为相机操作添加自定义条.请帮我做同样的事.

camera objective-c uiimagepickercontroller custom-view ios

40
推荐指数
2
解决办法
10万
查看次数

设置UIImagePickerController"移动和缩放"裁剪框的尺寸

"移动和缩放屏幕"如何确定其裁剪框的尺寸?

基本上我想为"CropRect"设置固定的宽度和高度,让用户根据需要移动和缩放他的图像以适应该框.

有谁知道如何做到这一点?(或者甚至可以使用UIImagePickerController)

谢谢!

cocoa-touch crop uiimagepickercontroller ipad ios

39
推荐指数
2
解决办法
5万
查看次数

UIImagePicker允许编辑卡在中心

我有一个UIImagePicker适用于一种UIImagePickerControllerSourceTypePhotoLibrary,但是当我使用UIImagePickerControllerSourceTypeCamera时,编辑框不能从图像的中心移动.因此,如果图像高于宽度,则用户无法将编辑框移动到图像的顶部正方形.

任何人都知道为什么会这样吗?它仅在源来自摄像机而不是库时才会发生.

编辑:一些代码!!!

if (actionSheet.tag == 2) {
    if (buttonIndex == 0) { // Camera
        // Check for camera
        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera] == YES) {
            // Create image picker controller
            UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

            // Set source to the camera
            imagePicker.sourceType =  UIImagePickerControllerSourceTypeCamera;
            imagePicker.allowsEditing = YES;

            // Delegate is self
            imagePicker.delegate = self;

            // Show image picker
            [self presentViewController:imagePicker 
                               animated:YES 
                             completion:^(void) {
                             }];
        }
    }
    else if (buttonIndex == 1) { // Photo Library
        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary] == …
Run Code Online (Sandbox Code Playgroud)

iphone uiimagepickercontroller ios

39
推荐指数
1
解决办法
8381
查看次数