gpt4 book ai didi

ios - 如何使用 First Responder 调用另一个 ViewController 方法

转载 作者:行者123 更新时间:2023-11-28 21:52:27 24 4
gpt4 key购买 nike

我一直在尝试按照这篇关于如何使用 First Responder 的文章进行操作。

http://www.cocoanetics.com/2012/09/the-amazing-responder-chain/

似乎如果 View Controller 存在于导航 Controller 等容器中,我应该能够调用在另一个 View Controller 中实现的第一响应者方法

这是 Storyboard 中的布局:

UINavigationController -(关系)-> UITableViewController1 -(推送)-> UITableViewController2

我想在 UITableViewController1 中实现一个方法

- (void)coolMethod:(id) { ... }

而是调用UITableViewController2中的方法

[[UIApplication sharedApplication] sendAction:@selector(coolMethod:) to:nil from:nil forEvent:nil];

我想要的是 sendAction:to:from:forEvent: 将 Action 发送到 UINavigationController,然后再将它发送到 UITableViewController2

我正在努力实现的目标是可能的吗?我做错了什么?

(此外,我尝试在 Storyboard中将其链接起来,但它不会连接。显然有问题,但我不知道我错过了什么)

如果您能给我任何帮助或建议,我们将不胜感激!

最佳答案

这不是响应链的用途,您的 VC1 不在 VC2 的响应链中。我想您可以实现自己的导航 Controller 子类来执行此操作,但这不是好的代码。

通过为 VC2 提供委托(delegate)属性并使 VC1 实现 dal agate 协议(protocol)并在推送 VC2 时将其自身设置为委托(delegate),可以更好地处理您所描述的内容。

关于ios - 如何使用 First Responder 调用另一个 ViewController 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27827245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com