gpt4 book ai didi

ios - 我可以使用同一个 ViewController 在 TabBarController 中多次添加吗

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

我有一个包含 5 个项目的 tabBar Controller 。前三项使用相同的 viewController,因为 UI 设计和功能几乎相同。所以我为前三个项目制作了一个 View Controller 。但是我不知道如何在 tabBar Controller 中多次添加相同的 viewController。是否可能或违反苹果规则?

最佳答案

您可以多次将选项卡栏 Controller 链接到 View :结果是选项卡栏上的多个选项卡链接到相同的 GUI,但 Controller 为每个版本实例化一次 - 即它们分别由 不同的相同类型的 View Controller 。

为此:

  • 如果 Storyboard中的文档大纲尚未打开,请将其打开。
  • 右键单击您的标签栏 Controller 并向下拖动到您希望成为标签栏项目的 View 并释放。

enter image description here

  • 在出现的弹出菜单中,将关系类型选择为“ View Controller ”。

enter image description here

  • 根据需要重复多次标签栏项目。

但是,这确实限制了这些选项卡栏项目具有完全相同的 GUI。如果您确实想要稍微不同的 GUI 但又要避免代码重复,则可以为每个 View 创建不同的 View ,然后为每个 View 使用相同的 UIViewController 类(这通常适用于 View ,而不仅仅是 TabBarItems)。

在 Storyboard 中,您可以通过以下方式做到这一点:

  • 选择 Storyboard 中的项目,
  • 打开右侧的“实用程序”边栏(如果尚未打开)
  • 打开“身份检查器”,
  • 在“自定义类”、“类”选择器中,选择您的类名(类类型必须与您尝试将其链接到的 View 类型匹配)。

enter image description here

您需要将需要 Storyboard 中的导出或操作的任何控件链接到共享此 Controller 的每个 View 的代码。

重要的是要注意,将为您链接到类的每个 View 创建此类的实例(即,您将 View 链接到相同的类型 的 Controller ,而不是相同的 Controller )。因此,如果您需要在 View Controller 之间共享数据或状态信息,则必须使用正常机制将其传递给它们。

关于ios - 我可以使用同一个 ViewController 在 TabBarController 中多次添加吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48134776/

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