ios - Objective-C:ViewWillAppear 在 ButtonTouchUpInside 主体之前运行

标签 ios objective-c uiviewcontroller viewwillappear touch-up-inside

我有一个带有 2 个 View Controller 的 Storyboard iOS 应用程序 -

第一个 Controller 有一个 UIButton,它有一个到下一个 View Controller 的导出和一个 buttonTouchUpInside 方法。

目前,第二个 View Controller 的生命周期在buttonTouchUpInside 主体运行之前开始,这是个坏消息,因为viewWillAppear 依赖于buttonTouchUpInside 主体的完成。我该如何阻止这种情况发生?

提前致谢

最佳答案

我假设“下一个 View Controller 的导出”是指显示下一个 View Controller 的 Action 序列,是的,这是 Storyboard中的正确行为。

如果你想在执行segue之前执行IBAction,你应该在两个 View Controller 之间定义一个手动segue,而不引用按钮,在IB中给它一个标识符,然后在IBAction中给它一个标识符您的第一个 View Controller 的方法定义,使用以下代码:

[self PerformSegueWithIdentifier:@"segueIdentifierGoesHere"发件人:self];

关于ios - Objective-C:ViewWillAppear 在 ButtonTouchUpInside 主体之前运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25652069/

相关文章:

iOS系统图标

ios - 用单例更改单元格文本?

objective-c - 运行我的项目时出现奇怪的错误

ios - UIView 中的 UITableView 未触发 didSelectRowAtIndexPath

ios - 当我的容器 UIViewController 被解除分配或卸载时,我必须清理我的子 UIViewControllers 吗?

ios - "let _ = ..."(让下划线等于)在 Swift 中有什么用吗?

ipad - 使用 Instruments 分析 iPad/iPhone web 应用程序

iphone - didReceiveMemoryWarning、viewDidUnload 和 dealloc

ios - 修复具有大量状态的巨型 View Controller

ios - UITableviewCell textLabel在iOS7中不可见