RelationshipSegue之后在ViewController中调用函数

问题描述 投票:0回答:1

我在UIViewController中嵌入了多个UITabbarController。这些通过关系段连接。

起点,VC1首先加载数据,然后将其处理为“详细”视图。每当我更改选项卡并返回到VC1时,应用程序都会卡住,因为未调用viewDidLoad

每次锁定VC1时都有一种方法来触发功能吗?

ios swift uitabbarcontroller uistoryboardsegue
1个回答
0
投票

应用程序卡住,因为未调用viewDidLoad

应用程序未卡死。运行良好。当视图控制器被创建加载其视图时,将调用viewDidLoad。这只会在视图控制器的生命周期中发生一次。当您离开视图控制器并使用back时,它仍然存在(即不是从头开始创建的),因此自然不调用viewDidLoad

如果您的目标是要了解选项卡栏控制器正在切换到VC1的事实,请给选项卡栏控制器委派一个代理并实现tabBarController(_:didSelect:)或类似内容。

甚至更好,请进行配置,以便无需执行此操作。如果两个视图控制器都访问共同的数据,请进行架构设计,以使视图控制器将新数据up发送到数据控制器,并且数据控制器将更改down的消息广播到所有视图控制器需要知道这一点。

© www.soinside.com 2019 - 2024. All rights reserved.