使用模态视图控制器和UIVisualEffectView

时间:2014-12-11 09:41:18

标签: ios objective-c

我正在尝试解决此博文中描述的问题:http://justabeech.com/2014/10/22/using-uivisualeffectview-in-a-modal-view-controller/

我有UIViewController个故事板模式segue到另一个UIViewControllerUIView的背景颜色为[UIColor clearColor]UIVisualEffectView

当我呈现视图控制器时,视觉效果模糊,直到转换完成,然后背景再次变为灰色(完全如该博客文章中的gif所示)。

enter image description here

我按照指定将模态过渡样式设置为FullScreen,但仍然存在同样的问题。还有什么可以让我失去这项工作?

编辑:另外,我收到以下错误:

Warning: Attempt to present <ClocksDetailViewController: 0x7ff89cb5bc70> on <ClocksViewController: 0x7ff89c8afe90> whose view is not in the window hierarchy!

由于

2 个答案:

答案 0 :(得分:17)

您可能使用了UIModalPresentationFullScreen而不是正确的UIModalPresentationOverFullScreen

使用旧UIModalPresentationFullScreen动画结束后,将从视图层次结构中删除所呈现控制器下的所有视图。

答案 1 :(得分:0)

您需要设置UINavigationController的模态表示样式,而不是UIViewController。

UINavigationController* navigationController = [[UIStoryboard storyboardWithName:@"myStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"myViewController"];
navigationController.modalPresentationStyle = UIModalPresentationOverFullScreen;