当涉及导航控制器时,如何在选项卡栏视图控制器之间移动数据数组

how can I move a data array between tab bar viewControllers when I have navigationControllers involved

我有一个标签栏控制器和 3 个 viewControllers 连接到它,当我在 viewControllers 之间移动数据时,我使用以下代码,它工作完美:

let secondTab = tabBarController?.viewControllers![1] as! ImageViewController
secondTab.imageArray = images

现在,我使用 EDITOR->Embed In...将导航添加到第二个 viewController。因此,我的 ImageViewController 和 tabBarController 之间现在有一个 navigationController。我怎样才能将数据发送到 ImageViewController?

你可以试试

if let nav = tabBarController?.viewControllers![1] as? UINavigationController {
 if let let secondTab = nav.topViewController as? ImageViewController
     secondTab.imageArray = images
  }
}