gpt4 book ai didi

ios - 将对象传递给多个深度级别的 "detailed" View Controller

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

在 iOS 中,使用 Storyboards,当我想将对象传递给详细 View Controller 时,我通常会执行以下操作:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
UIViewController *destination = [segue destinationViewController];

if ([segue.identifier isEqualToString:@"ShowRouteViewController"]) {
if ([destination respondsToSelector:@selector(setRoute:)]) {
[destination setValue:self.route forKey:@"route"];
}
}
}

如果我的下一个 View Controller 需要这个对象,这对我来说很有意义。我想知道的是,将对象传递到多个屏幕深处的最佳实践是什么。例如,如果我有 4 个 View Controller :

A->B->C->D

A有路由属性,D需要路由属性,但B和C没有,D如何获取路由属性?我只是将属性添加到 B 和 C,以便属性可以滴入我需要的 View Controller ,但我不确定是否有更简洁的方法来执行此操作。提前致谢!

最佳答案

你可以使用 appdelegate。在 AppDelegate 中声明变量(nsstring、nsinteger、nsarray .. 等)。现在你可以这样调用你的变量:self.appDelegate = [[UIapplication 共享应用程序]delegate];self.appDelegate.yourVariable

关于ios - 将对象传递给多个深度级别的 "detailed" View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18886747/

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