我正在扩展Appirater(一个独立的课程,向用户提供UIAlertView以征求您的应用的评级),添加一个按钮,当被选中时将关闭警报,并调出MFMailComposerViewController以便用户可以通过电子邮件发送反馈。
我的实现是在Appirater中发布通知,然后从侦听通知的viewController中使用[self presentModalViewController:vc animated:YES]。那个viewController是我所有主要viewControllers的超类。
它在一个主视图控制器中工作,但其他viewControllers中的崩溃是当前的viewController,我在控制台中看到以下警告:
2010-12-17 11:27:59.632 Wine.com [18514:207] * 终止 应用程序由于未捕获的异常 'NSInternalInconsistencyException', 理由:'试图开始一个模态 过渡到 虽然转型是 已经在进行中。等待 viewDidAppear / viewDidDisappear知道 目前的转型已经完成了'
我试图推迟从Appirater发送通知,但这似乎没有帮助。
思想/指针?
答案 0 :(得分:0)
点击UIButton
打开Modal View
时出现类似错误。我将UIButton's
听众从UIControlEventAllEvents
更改为UIControlEventTouchUpInside
。基本上,它是在Touch Down Inside
上触发模态视图,然后尝试在Modal View
上创建另一个Touch Up Inside
实例。
答案 1 :(得分:0)
问题在于,通过在超类中实现它,我需要确保只有当前活动的viewController处理通知,而不是全部5个。