当前位置: 首页 > 面试题库 >

Swift:带有导航控制器的prepareForSegue

云联
2023-03-14
问题内容

我正在用Swift开发iOS应用程序。

我想使用prepareForSegue函数将数据从视图发送到另一个视图。

但是,我的目标视图之前是导航控制器,因此它不起作用。

请问我该怎么做?


问题答案:

prepareForSegue访问目标导航控制器,然后在其顶部:

let destinationNavigationController = segue.destination as! UINavigationController
let targetController = destinationNavigationController.topViewController

您可以从目标控制器访问其视图并传递数据。

在旧版本(现在已过时)的Swift和UIKit版本中,代码略有不同:

let destinationNavigationController = segue.destinationViewController as UINavigationController
let targetController = destinationNavigationController.topViewController


 类似资料:
  • 我在TableView中有CollectionView。一切都好,但是。当我想将我的单元格导航到另一个viewController时,我遇到了错误 Xcode show me self.NavigationController?.PushViewController(bookView,Animated:true)行出现错误。这是错误说明: RelatedBookTableViewCell是我的自定

  • 我有一个导航视图控制器,它会在操作时向选项卡栏视图控制器发送一个序列。因此,选项卡式视图控制器继承了导航栏。我正在尝试将标题应用于连接到选项卡栏视图控制器的其中一个视图控制器,但通过代码设置标题对我不起作用。有人知道为什么会这样吗? 这是我的故事板的图片: 带有注销按钮的视图控制器是我试图在导航条(代码)中设置标题的地方: 导航控制器中嵌入的视图控制器触发到选项卡栏控制器的顺序:

  • 问题内容: 题 如何仅使用按钮的touch up内部事件从一个视图控制器导航到另一个视图控制器? 更多信息 我在一个示例项目中尝试执行的步骤是: 创建示例单视图应用程序。 为用户界面(ViewController2)添加一个新文件->具有XIB的Objective-C类。 在ViewController.xib中添加一个按钮,并控制单击ViewController.h的按钮以创建内部补全事件。 转

  • 请参见黑色导航栏和分组的表格视图垂直细条纹之间的空白?该空间是导航栏的一部分。如果我滚动表格视图,空格将保持在原来的位置。 我需要navigationController框架仅在这个viewController中更短,这样就没有提供的屏幕截图中显示的空白。 (可能与此有关的是一个带有分组tableview的viewController)。。 以下是此视图控制器的唯一其他子视图: 此导航栏在应用程序

  • 问题内容: 我正在重建没有情节提要的应用程序,而我遇到最大麻烦的部分是以编程方式浏览视图到视图。很少有东西不用情节提要写出来,因此很难找到答案。 我的问题很简单。我有我和我,我想从前者推向后者。 在: 然后在: 打印返回零。我试着做: 当创建类时(但在ViewDidLoad外部,在类声明的正下方),并使用var 完成了推送,但这没有用。 我在想,也许解决方案是在App Delegate中创建整个应

  • 我有一个关于底部导航栏的奇怪问题,虽然我花了大量时间在它上面,但我无法解决。当我以“推荐”的方式(从许多教程中)使用它时,它就是无法导航。 那么,我所说的“推荐”方式是什么意思呢:我有一个单独的acticity,其中有一个名为“MainActivity”的navHostFragment。这个主要活动有一个XML布局文件,我将底部导航栏放在其中。BottomNavigationBar还有一个XML布