【问题标题】:nav bar nonresponsive after UIImagePickerController dismissedUIImagePickerController 关闭后导航栏无响应
【发布时间】:2015-08-02 03:34:24
【问题描述】:

仅在 iOS 7 上,我的应用程序中的导航栏在使用 UIImagePickerController 后不会响应任何触摸,然后将其关闭(无论是否选择了图片)。导航栏下方的屏幕功能正常,但现在无法在应用中导航返回;用户卡在这个屏幕上。

我正在从代码中启动 UIImagePickerController,尽管应用程序的其余部分在情节提要中布置。

UIImagePickerController *mediaUI = [[UIImagePickerController alloc] init];
mediaUI.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
mediaUI.mediaTypes = [NSArray arrayWithObject:(NSString *) kUTTypeImage];
mediaUI.allowsEditing = NO;
mediaUI.delegate = self;
[controller presentModalViewController: mediaUI animated: YES];

提前感谢您的帮助。

【问题讨论】:

    标签: ios7 uinavigationcontroller uinavigationbar uiimagepickercontroller


    【解决方案1】:

    希望您正确执行这些步骤!

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    
        [picker dismissViewControllerAnimated:YES completion:NULL];
    
    }
    
    - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
    
        [picker dismissViewControllerAnimated:YES completion:NULL];
    
    }
    

    当你打电话时

     UIImagePickerController *picker = [[UIImagePickerController alloc] init];
     picker.delegate = self;
     picker.allowsEditing = YES;
     picker.sourceType = UIImagePickerControllerSourceTypeCamera;
    

    [self presentViewController:picker animated:YES completion:NULL];

    干杯!

    【讨论】:

    • 感谢您的评论,但这不是问题。
    【解决方案2】:

    我注意到日志显示“开始/结束外观转换的不平衡调用”正在启动控制器。当图像选择器控制器出现时,我立即从另一个控制器启动它。这在 iOS 8 上运行良好,但在 iOS 7 上需要延迟。我通过在短暂延迟后调用我的方法来修复它:

    [self performSelector:@selector(takePicture) withObject:nil afterDelay:.1];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-03
      • 2021-10-18
      • 2013-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-20
      相关资源
      最近更新 更多