快照未呈现的视图会导致xamarin.ios7中出现空快照

Mah*_*ode 7 xamarin.ios ios7

什么时候,我从相机捕获图像然后它在ios7的控制台上给出错误.我首先尝试没有在代码中添加Thread.sleep(3000),但这也无法正常工作.

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

码:

public override void ViewDidLoad ()
    {
        base.ViewDidLoad ();

        // Perform any additional setup after loading the view, typically from a nib.           

        PictureFromCameraButton.TouchUpInside += PictureFromCameraButton_Click;

    }

private void PictureFromCameraButton_Click (object sender, EventArgs e)
    {
        try {
            Thread.Sleep (4000);                
                ImagePickerController.SetSourceType(UIImagePickerControllerSourceType.Camera);
    this.PresentViewController (ImagePickerController, true, null);


        } catch (NotSupportedException exception) {
            //Logging Exception in Flurry
            FA.Flurry.LogError(exception.GetType().Name,exception.Message,
                               new NSError(NSError.CocoaErrorDomain,3584));

            BeginInvokeOnMainThread (() => {
                UIAlertView ErrorAlert = new UIAlertView ("Device unsupported", "Your device does not support this feature",
                                                         new UIAlertViewDelegate (), "OK");
                ErrorAlert.Show ();
            });
        } catch (Exception ex) {
            //Logging Exception in Flurry
            FA.Flurry.LogError(ex.GetType().Name,ex.Message,
                               new NSError(NSError.CocoaErrorDomain,3584));
            this.ShowErrorInProcessingAlertView ();
        }
    }
Run Code Online (Sandbox Code Playgroud)

小智 3

为了解决 iOS 7 中的这个问题,这也解决了我同样的错误。

当我提出UIImagePickerController在我的情况下被称为imagePickerController

不要使用nilNULL。相反,我使用了下面的代码,打开相机时不再出现错误。

[self presentViewController:imagePickerController animated:YES completion:^{....}];
Run Code Online (Sandbox Code Playgroud)

  • 这对我没有帮助。我仍然不时收到“正在拍摄视图...”消息:/ (4认同)