presentViewController:animated:completion:的特殊之处

原型:

- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion


描述:

Presents a view controller modally.
  In a horizontally compact environment, the presented view is always full screen. In a horizontally regular environment, the presentation depends on the value in the modalPresentationStyle property.
    This method sets the presentedViewController property to the specified view controller, resizes that view controller's view based on the presentation style and then adds the view to the view hierarchy. The view is animated onscreen according to the transition style specified in the modalTransitionStyle property of the presented view controller.
The completion handler is called after the viewDidAppear: method is called on the presented view controller.

注意上面红色文字的地方。

一般来说,页面跳转必须在viewDidLoad和viewDidAppear之后才能进行,如果是在presentViewController:animated:completion:的completion中跳转,可以确保页面跳转是在viewDidAppear之后进行的。否则,就会有可能提示Warning: Attempt to present on whose view is not in the window hierarchy!


参考:

对Warning: Attempt to present on whose view is not in the window hierarchy!的解决方案


转载于:https://my.oschina.net/ioslighter/blog/380765

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值