推送后视图上的按钮将不起作用,然后呈现一个 UIViewController

Posted

技术标签:

【中文标题】推送后视图上的按钮将不起作用,然后呈现一个 UIViewController【英文标题】:The Button on the View will not work after push and then present an UIViewController 【发布时间】:2014-10-01 03:40:57 【问题描述】:

我在导航栏上制作了一个带有按钮的视图控制器。现在按钮可以正常工作了。但是在推送一个带有动画的 UIViewController 然后再呈现另一个 UIViewController 然后返回 Home ViewController 后,导航栏上的按钮将不起作用。

如果在使用[ pushViewController: animated:] 方法时将所有动画设置为NO,它将起作用。 (我在f**king CHINA,***无法正常工作,我无法以正确的格式在这里发布代码。请下载我的代码here。https://github.com/bohanyzu/PresentViewControllerTest) 谢谢!

【问题讨论】:

【参考方案1】:

您不应一次执行多个动画屏幕过渡。它很可能会破坏 UIKit 的内部状态。推新屏幕或呈现新屏幕。不要同时做这两件事。

还要在日志中查找消息。 UIKit 经常(但不总是)在运行时报告这些问题。

【讨论】:

我想知道原因 这就是原因。如果发生这种情况,则 UINavigationBar 的内部状态会被破坏,这可能会导致任何奇怪的错误。

以上是关于推送后视图上的按钮将不起作用,然后呈现一个 UIViewController的主要内容,如果未能解决你的问题,请参考以下文章