3

我正在使用 ContainerView 在 iOS 应用程序中的各种 ViewController 之间共享视图。这在大多数情况下都很有效,除了 TabViewController,它会导致创建一个额外的空白选项卡项。我附上了来自故事板的屏幕截图,您可以在其中看到文档大纲中的 4 个关系列表和 1 个嵌入 Segue 列表。据我所知,TabViewController 的 Embed Segue 连接被解析(/混淆)为第 5 个关系连接,因此是一个选项卡项。考虑到情节提要中的关系和嵌入 Segue 连接看起来很相似(除了图标略有不同),并且它们在文档大纲中彼此相邻列出,我可以看到这个错误是如何发生的。

为了弥补这个错误,我使用 tabItem titlePositionAdjustment 将 4 个合法选项卡置于界面的中心。这里的问题是我只能补偿选项卡图标/标签,而不是实际的按钮本身。无论如何,5 个标签栏控制器按钮似乎都处于固定位置。

我希望其他人已经遇到了这个问题,并且可以提供解决方案或更好的方法来缓解这个问题。

谢谢你!

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

1

好的 -

pbasdf 向我发送了正确的方向。最后,我为连接到我的 tabView 的 4 个视图中的每一个添加了一个 viewContainer,并为共享视图添加了一个 EmbedSegue。

问题是您只需要其中一个视图控制器将 viewContainer 附加为 tabViewController 的子视图。然后,它与 tabViewController 中的所有视图控制器共享。

所以,我有一个正常工作的 tabViewController,默认情况下有 4 个按钮,以及它上面的嵌入式 containerView。

于 2017-02-07T02:26:48.640 回答