gpt4 book ai didi

ios - ios中如何将数据传递给父类?

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:10:11 27 4
gpt4 key购买 nike

我是 objective-C 的初学者。如果我的问题很愚蠢,请原谅。

在我的 root view controller A 中,我添加了一个 subview B。在 b 中将有另一个 subview C。 C 包含另一个 subview D。如何调用 A from D 中的方法。我知道我们可以使用 delegates 将数据传递给 parent controller。但我的问题是,我是否需要创建从 D 调用 C 的委托(delegate)和另一个从 C 调用 B 的委托(delegate)等等?或者有什么方法可以直接调用A from D中的方法吗?

最佳答案

But my question is that do i need to create delegate which calls C from D and another one for call B from C and so on?

View Controller 的工作是管理它的 View 和该 View 的所有 subview 。如果您有一个 View 需要向 View Controller 发送消息,例如当用户更改其值时需要在某处发送消息的控件,那么 View Controller 应该知道它在那里。在这种情况下, View Controller 可以在加载 View 层次结构时负责将自己(或其他一些适当的对象)设置为所述 subview 的委托(delegate)或目标,如下所示:

- (void)viewDidLoad
{
self.needControl.delegate = self;
}

这样,有需要的控件就不需要了解作为其委托(delegate)的对象的任何信息。它不假设该对象是 View Controller 或其父 View 或其他任何东西。它所关心的只是它有一个委托(delegate),并且它的委托(delegate)实现了必要的方法。而这反过来又可以帮助您使代码更加灵活和可维护,甚至可以重用。

关于ios - ios中如何将数据传递给父类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16074647/

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