标签: uiimagepickercontroller

iOS 7 UIImagePickerController具有黑色预览

我有一个使用sourceType相机调用的UIImagePickerController,80%的时间我得到黑色预览.如果我等待,让我们说大约30秒,我会得到一个很好的预览,它会在大约50%的时间内好,然后它会再次破裂.

有问题的图像与此非常相似.iDevice相机显示黑色而不是预览

其他人暗示GCD可能会导致相机出现问题,并且在加载图像选择器时更新UI会破坏它.我为每个调用主线程的GCD块设置了一个锁.

这是旋转以模拟活动指示器的图像的示例.

-(void)animateLoadingImage {

if (isMainThreadBlocked) {
    return;
}

self.radians += M_PI_4 / 2;
[UIView beginAnimations:@"progress rotation" context:nil];
[UIView setAnimationDuration:.1];
self.loadingImageView.transform = CGAffineTransformMakeRotation(self.radians);
[UIView commitAnimations];


}
Run Code Online (Sandbox Code Playgroud)

PS:快照未渲染的视图会导致空快照.确保在屏幕更新后快照或快照之前至少渲染了一次视图.

这会在我尝试打开拾取器控制器时显示ALWAYS,但即使相机正确显示预览,它也会显示.我不认为错误在这里,但这也让我很烦恼.

iphone uiimagepickercontroller ios7

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

didFinishPickingMediaWithInfo不叫Swift

我有一个UITableViewCell按钮来拍摄图像并将其放回单元格中.当我调用UIImagePickerController并获取图像时,它不会调用以下委托

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject], sender:AnyObject)
Run Code Online (Sandbox Code Playgroud)

这是我在UITableViewController中的takePhotoFunction:

@IBAction func takePhoto(sender: AnyObject) {
let imagePickerController = UIImagePickerController()
imagePickerController.delegate = self
imagePickerController.allowsEditing = true

let actionSheet = UIAlertController(title: "Choose image souruce", message: nil, preferredStyle: UIAlertControllerStyle.ActionSheet)

actionSheet.addAction(UIAlertAction(title: "Take Image", style: UIAlertActionStyle.Default, handler: { (alert:UIAlertAction!) -> Void in
    imagePickerController.sourceType = UIImagePickerControllerSourceType.Camera
    self.presentViewController(imagePickerController, animated: true, completion: nil)
}))

actionSheet.addAction(UIAlertAction(title: "Photo Library", style: UIAlertActionStyle.Default, handler: { (alert:UIAlertAction!) -> Void in
    imagePickerController.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
    self.presentViewController(imagePickerController, animated: true, completion: nil)
}))
actionSheet.addAction(UIAlertAction(title: "Cancel", style: …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview uiimagepickercontroller ios swift

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

退出时的选择器错误消息(在发现扩展时遇到:错误域= PlugInKit代码= 13)使用Swift 4 - Xcode 9

相近

PhotoPicker发现错误:错误Domain = PlugInKit Code = 13

还有

https://forums.developer.apple.com/thread/82105

但我已经尝试了所有这些建议,但仍然在调试日志中出错.运行Swift 4 XCode 9A235

各个地方的建议是......

  • 有人说加@objc
  • 有人说加内部
  • 有些人建议添加_并确保使用Any而不是AnyObject
  • 有人说使用didFinishPickingImageWithInfo(这不会给我返回任何图像)
  • 有些人说是挑衅者,其他人说解雇自己,其他人说解雇他们
  • 有人说将'隐私......'添加到plist(已完成)
  • 添加了导入照片
  • 之前调用强制PHPhotoLibrary.requestAuthorization(){(状态) - > Void in ...

我没有在Swift 3中遇到这个问题 - 以前的xcode.但是使用Swift 4,我尝试了每次看到的建议,但仍然会出现以下错误

[发现]发现扩展时遇到的错误:错误域= PlugInKit代码= 13"查询已取消"UserInfo = {NSLocalizedDescription =查询已取消}

选择器工作正常,我最终选择了照片中的图像,但每次都在选择器退出(取消或选择)时收到此错误消息...

有任何建议如何停止错误消息?除了其他两个链接提供的事项列表(上面概述)

我的方法

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

    imageSelected = nil

    if let editedImage = info["UIImagePickerControllerEditedImage"] as? UIImage {
        imageSelected = editedImage
    } else if let originalImage = info["UIImagePickerControllerOriginalImage"] as? UIImage {
        imageSelected = …
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller swift4

21
推荐指数
1
解决办法
1万
查看次数

范围滑块的触摸(框)视频修剪器"关闭"

我正在使用FDTake(pod不会对这个问题太重要但仍然是)从照片中选择视频中的视频.但是,我还希望能够编辑视频并将其长度限制为大约12秒.要做到这一点我看着吊舱的代码,改变了第271行self.imagePicker.allowsEditing = true这已经导致我一直没能迄今为止解决的问题:左边的滑块的触摸(盒)是"关闭".由于这是一个相当含糊的描述我上传了一个视频,你可以在这里找到它.

不幸的是,我完全不知道是什么引起了这个问题,我真的很感激这方面的一些帮助.我问FDTake的创建者,但显然他认为Apple需要解决这个问题(因为你将能够看到最近的一个封闭问题).

有人可以解释我如何解决这个问题以及导致它的原因吗?

uiimagepickercontroller ios swift

21
推荐指数
2
解决办法
646
查看次数

iPhone:如何从图书馆中选择视频的持续时间?

UIImagePickerController用来从库中选择视频文件.用户可以上传视频.

此外,我正在使用videoMaximumDuration属性,而用户想要捕获视频并上传它.

我想知道如何获取所选视频文件的持续时间?这样我就可以限制用户上传持续时间超过20秒的视频.

我可以通过以下代码获得有关所选视频的一些基本信息:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    selectedVideoUrl = [info objectForKey:UIImagePickerControllerMediaURL];
    NSError *error;
    NSDictionary * properties = [[NSFileManager defaultManager] attributesOfItemAtPath:selectedVideoUrl.path error:&error];
    NSNumber * size = [properties objectForKey: NSFileSize];
    NSLog(@"Vide info :- %@",properties);
}
Run Code Online (Sandbox Code Playgroud)

但是所选视频的持续时间并不存在.

谢谢...

iphone uiimagepickercontroller ios

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

带allowEditing的UIImagePickerController不允许平移裁剪

我在这里看到了这个问题:UIImagePicker允许编辑卡在中心

似乎以前有人遇到过这个问题,但是没有明确的解决方案.

复制步骤:

  1. 设置allowEditing = YES
  2. 拍张照片
  3. 裁剪窗口出现,但每次我平移图像时,它都会快速回到中心.

我在iOS 7.0.3上.

这是我的代码:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

imagePicker.delegate = self;
imagePicker.modalPresentationStyle = UIModalPresentationCurrentContext;
imagePicker.allowsEditing = YES;
[self presentViewController:imagePicker animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller ios ios7

20
推荐指数
1
解决办法
4896
查看次数

UIImagePickerController在iOS10上崩溃

iOS10上展示UIImagePickerController照片库来源时,我的应用程序崩溃了.

具有相机源的iOS10和具有照片库和相机源的iOS9上,该应用程序不会崩溃.

该应用程序是用Swift 2.2编写的,由Xcode 7.3.1构建.

为什么会发生崩溃?

let imagePicker = UIImagePickerController()
imagePicker.sourceType = .PhotoLibrary
imagePicker.allowsEditing = true
imagePicker.delegate = self
self.presentViewController(imagePicker, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪

uiimagepickercontroller ios swift ios10

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

iPhone - UIImagePickerController - >将图像保存到app文件夹

我有一个使用的iPhone应用程序UIImagePickerController.就像sourceType我一样

  • UIImagePickerControllerSourceTypePhotoLibrary
  • UIImagePickerControllerSourceTypeCamera
  • UIImagePickerControllerSourceTypeSavedPhotosAlbum

因此,用户可以从照片或相机照片中制作照片或从照片库中选择一张照片.

图像将显示在UIImageView中.如果用户关闭应用程序,则应保存图像.所以对于文本字段,我使用NSUserDefaults.我知道,使用NSData将图像保存在NSUSerDefaults中并不是一个好方法,所以我想将图像保存/复制到由我的应用程序控制的文件夹,类似于NSUserDefaults.

我怎样才能做到这一点?我想保存它,然后我可以将文件的路径写入我的NSUserDefaults并在应用程序启动时读取它.

提前谢谢你和最诚挚的问候.

iphone objective-c uiimagepickercontroller uiimage

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

iPhone相机光圈/快门卡在关闭位置

正如标题所述,我正在开发的应用程序存在一个问题,该问题仅在应用程序在进入后台后重新启动时才会出现.

相机光圈或快门卡在关闭位置.有趣的是你仍然可以拍照,但你看不到预览.拍摄照片后,视图中会正确显示.

如果应用程序完全关闭,则在启动应用程序时不会发生此问题.我可以拍照,添加效果等,每次打开相机都能正常工作.

以下是重现问题的确切步骤:

1)我打开应用程序,一切正常.

2)应用程序通过按主页按钮或来电进入后台.

3)当应用程序进入前景/重新打开并且访问摄像机时,显示快门屏幕并在卡住位置保持关闭状态.

4)解决它的唯一方法是关闭模态视图相机控制器并再次按下相机按钮.

我做了一些研究以找到答案并且没有提出任何问题.没有内存泄漏,我已经检查了仪器中的内存分配,没有什么不寻常的.

希望有人有解决方案,我很感激帮助.

先感谢您.

iphone camera uiimagepickercontroller

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

如何在iPad中使用UIImagePickerController?

嗨,我正在开发通用应用程序(iPhone/iPad).一个功能是我必须从相册中选择一张照片并在UIImageView上显示.

现在的问题是它在iPhone上运行良好但是当我尝试打开相册时它会崩溃.我在行动表委托中的代码是这样的:

- (void) actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
        if ( ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]))

        {   
            if (buttonIndex == 0)
            {
                [self lockAllImagesOnTheScreen];
                imagePicker.sourceType=UIImagePickerControllerSourceTypeCamera;
                [self presentModalViewController:imagePicker animated:YES];
            }
            if (buttonIndex == 1)
            {
                [self lockAllImagesOnTheScreen];

                imagePicker.sourceType= UIImagePickerControllerSourceTypePhotoLibrary;
                [self presentModalViewController:imagePicker animated:YES];
            }

        }
        else {

            if (buttonIndex == 0)
            {
                [self lockAllImagesOnTheScreen];
                imagePicker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
                imagePicker.sourceType= UIImagePickerControllerSourceTypePhotoLibrary;
                [self presentModalViewController:imagePicker animated:YES];
            }
        }



    }

    else{
        if ( ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]))

        {   
            if (buttonIndex == 0)
            {
                [self lockAllImagesOnTheScreen];
                imagePicker.sourceType=UIImagePickerControllerSourceTypeCamera;
                [self presentModalViewController:imagePicker animated:YES]; …
Run Code Online (Sandbox Code Playgroud)

iphone uiimagepickercontroller ipad

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