didUpdate标题在视图用作相机覆盖时不被调用



我对以下代码有问题:

我实现了一个名为LayoutViewController的简单ViewController,它显示了一张根据磁航向自动移动的图片。 代码包括:

lm = [[CLLocationManager alloc] init];
lm.delegate = self;
lm.desiredAccuracy = kCLLocationAccuracyBest;
lm.distanceFilter = kCLDistanceFilterNone;
[lm startUpdatingLocation];
lm.headingFilter = kCLHeadingFilterNone;
[lm startUpdatingHeading];

在视图确实加载,然后我实现了didUpdateHeading,其中执行动画。一切正常。在另一个视图控制器中,我放置了一个按钮,并在 IBAction 中放置:

LayoutViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"LayoutViewController"];

一切都奏效了。

问题是,如果我尝试使用LayoutViewController作为相机叠加视图,动画将不起作用。

我实现了:

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

    picker.delegate = self;
    picker.allowsEditing = YES;
    picker.sourceType = UIImagePickerControllerSourceTypeCamera;
    picker.showsCameraControls = YES;
    picker.modalPresentationStyle = UIModalPresentationFullScreen;

    LayoutViewController* overlayView = [self.storyboard instantiateViewControllerWithIdentifier:@"LayoutViewController"];
    picker.cameraOverlayView=overlayView.view;

[picker setCameraOverlayView:overlayView.view]而不是picker.cameraOverlayView=overlayView.view给出了相同的问题)

这样做时,它会打开相机,我可以看到我在 LayoutViewController 中的图片,因此 LayoutViewController 实例已成功加载,但没有执行动画,因为它接缝 didupdatehead 未被调用。

请帮帮我!

你保留一个'LayoutViewController'对象吗?还是仅将其视图设置为摄像机叠加视图?

如果您不保留它,CLLocationManager 也会被取消分配。

相关内容

  • 没有找到相关文章

最新更新