Warning: Attempt to dismiss from view controller <UIViewController: 0x17d71c10> while a presentation or dismiss is in progress!

昨天 调试程序 已经快要上线了 突然有个BUG 找了半天 才找到是因为这个警告 但是 解决这个警告又花了一天的时间 试了各种消除控制器的方法 都不可用 其中

并且 有这个bug  手机真机测试完全没问题  只有在iPad上 有这个警告 就会出问题

第一个解决办法  试了下 半成品  上下代码

dispatch_after(dispatch_time(DISPATCH_TIME_NOW,(int64_t)(0.51 * NSEC_PER_SEC)),dispatch_get_main_queue(), ^{

if (![self.presentedViewController isBeingDismissed]) {

[self dismissViewControllerAnimated:NO completion:nil];

}

});

其中 这个0.51 其实说是时间间隔 但是 我测试了下 如果 设置成了 0.01  测试了10此 每次还是会出现这个bug 如果0.99 测试了20次 没出现一次

个人认为 这数字 好像就是百分比的概率问题 欢天喜地 的把接口 扔给游戏那边了 说一下 我这边是客户端 做完要给游戏端接入下 测试下 能用不 我这边测试能用

可是 一到游戏那边  这个方法  怎么弄都不行  有的时候是 第一次运行可以 第二次运行不行 第三次运行又可以了 ,反正就是找不到规律 所以这个方法 对我还是不行

第二个 解决方法  试了下  完全可以用了  上下代码

-(void)viewDidAppear:(BOOL)animated

{

[super viewDidAppear:animated];

[self forcedUpdateVersionSelf];

}

没错 把你要dismiss 的方法 写到 -(void)viewDidAppear:(BOOL)animated  中即可  我 原先是写到

-(void)viewDidLoad中了 所以 总出这个错误

这个错误翻译下 :你的视图控制器还在程序中, 你却试图清除你的ViewController。

理解的意思 是 应该是 你的视图还没有完全加载成功呢 你却要消除视图  这样计算机 就可能有时候 搞不清 你到底 想干什么  到底是加载 还是清除

时间: 2024-11-05 21:46:49

Warning: Attempt to dismiss from view controller <UIViewController: 0x17d71c10> while a presentation or dismiss is in progress!的相关文章

iOS开发报错之attempt to dismiss modal view controller whose view does not currently appear

刚才遇到一个问题,现在在这就当纪录一下,大家有遇到的能快速找到原因,分享一下啊. 在APP中,需要用户登录后才能使用,所以我通过更改APP的[UIApplicationsharedApplication].keyWindow.rootViewController来控制界面的跳转. 在使用过程中出现如下问题: 1.登录成功后点击注销按钮,弹出注销提示框UIAlertView: 2.注销成功后重新登录: 3.再次点击注销不再弹出UIAlertView. 提示如下警告: 点击注销按钮执行更改rootv

Warning: Attempt to present &lt;UIAlertController: 0x7fb6ab704950&gt; on &lt;UIViewController: 0x7fb6ab51c810&gt; whose view is not in the window hierarchy!

对于在UIView上,是不能跳转的,所以我们通常要借助UIViewController,但经常会出现UIViewController没被加载的情况.这时就会报这个错. 解决方法: viewCon = (UIApplication.shared.keyWindow?.rootViewController)!  self.viewCon.present(alertView, animated: true, completion: nil); 希望后面的童鞋不要掉坑里了哦!!!!

iOS 跳转出现attempt to dismiss modal view controller whose view does not currently ……的解决方案

今天在设置修改密码成功进行跳转到登录页面重新登录的时候,我写的原代码是: [self dismissViewControllerAnimated:YES completion:nil]; [UIApplication sharedApplication].keyWindow.rootViewController = [[loginViewController alloc]init]; 于是出现了在本页面跳到登录页面,然后又切回到本页面的状况.如图: 首先是修改密码的页面: 点击确认以后,跳转到登

Warning: Attempt to present on whose view is not in the window hierarchy!

当我想从一个VC跳转到另一个VC的时候,一般会用 - (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^)(void))completion;当然也可以用导航push. 有时会遇到了此类警告:Warning: Attempt to present on whose view is not in the window hier

iPad keyboard will not dismiss if modal view controller presentation style is UIModalPresentationFor

在ipad上present 一个 navigation controller 时,present后弹出的keyboard,不能够 dismiss 掉.即使 textfield resignFirstResponder,keyboard也不会消失. Problem: 在iPad keyboard上发现一个问题,当viewController在navigation controller下以模态视图弹出,并且navigationController.modalPresentationStyle = U

XCode warning:“View Controller” is unreachable because it has no entry points

Unsupported Configuration: "View Controller" is unreachable because it has no entry points, and no identifier for runtime access via -[UIStoryboard instantiateViewControllerWithIdentifier:]. 直译:不支持的设置:"View Controller"是不能被取到的,因为它没有程序入口

【IOS笔记】View Controller Basics

View Controller Basics   视图控制器基础 Apps running on iOS–based devices have a limited amount of screen space for displaying content and therefore must be creative in how they present information to the user. Apps that have lots of information to display

Custom Container View Controller

什么是Container View Controller?苹果文档是这么描述的:  A container view controller contains content owned by other view controllers. 也就是说一个View Controller显示的某部分内容属于另一个View Controller,那么这个View Controller就是一个Container,比如UIKit中的UINavigationController,UITabBarControl

iOS开发总结(A0)- Custom View Controller Transition

如何实现custom transition ios 8 下可结合UIPresentation 和UIViewControllerTransitioningDelegate ios 7 下无UIPresentation(与ios 8下类似). 以下是在ios8下实现的: 1. 设置presentedvc 的modalPresentationStyle属性为UIModalPresentationCustom,并设置transitioningDelegate; - UIModalPresentatio