gpt4 book ai didi

iphone - 在 UINavigationController 和模式演示中将数据从子级传递到父级的更好方法 : reference to parent or delegates?

转载 作者:行者123 更新时间:2023-11-29 11:20:18 25 4
gpt4 key购买 nike

所以最近我一直在尝试将数据从 subview Controller 传递到父 View Controller 的方法。我已经解决了两个。代表方法:

http://timneill.net/2010/11/modal-view-controller-example-part-2/

以及在推送子 Controller (UINavigationController)或呈现(通过模态呈现)之前将父 View Controller 的引用传递给 subview Controller 的简单方法

- (IBAction)myAction:(id)sender{
MyViewController *myView =
[[MyViewController alloc] init];

myView.isLinking = YES;
myView.parent = self;


// present child pushing or presentation logic here

[sender resignFirstResponder];
}

但我想知道,如果我只想能够将数据从 subview Controller 传递到父 View Controller ,那么我为什么要选择委托(delegate)呢?

此外,关于 SO 的建议只有少数答案。事实上,我不记得是否有。

所以我想知道,为什么不推荐使用后者,为什么有更多人建议委托(delegate)甚至从应用程序委托(delegate)中检索 Controller ?

最佳答案

因为第二种方法ties parent 对 child ,反之亦然,制作circular dependency .这是糟糕的 OOP。使用委托(delegate)意味着可以通过任何方式调用代码来使用 subview ,无论是现在还是将来。

关于iphone - 在 UINavigationController 和模式演示中将数据从子级传递到父级的更好方法 : reference to parent or delegates?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7562913/

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