gpt4 book ai didi

ios - UITabBar 选项卡推送新的 ViewController

转载 作者:行者123 更新时间:2023-11-28 22:19:08 24 4
gpt4 key购买 nike

假设我的 UITabBar 中有 4 个项目:A B C D。

通过委托(delegate)方法,D 从 UITabBar 的 navigationController 推送一个新的 viewController,(删除那个 View 的 tabBar)。

这工作正常,但是我怎样才能防止 UITabBar 在从新 View 返回时显示 D 的空白 View ?

我尝试将 selectedIndex 设置为推送时的上一个索引,但这只会挂起应用程序(对于模式似乎工作正常,只是在推送时不行。)

最佳答案

如果我对此的解释是正确的,当您因选择一个选项卡而推送一个 View 时,您将同时更改所选的选项卡。这可能是在尝试更改您当前正在推送 View 的 View 层次结构(这将是选择您尝试将其设置为的另一个选项卡的结果)。所以它可能会崩溃,因为它正在替换正在显示的 View 。

此外,从它的声音来看,您正在 UINavigationController 内部使用 UITabBarController。 Apple 表示您不应该将 UITabBarController 放置在另一个 View Controller 中。以下内容摘自 Apple 关于 UITabBarController 的文档:

When deploying a tab bar interface, you must install this view as the root of your window. Unlike other view controllers, a tab bar interface should never be installed as a child of another view controller.

如果是这种情况,您应该重新设计您的应用,这样您就不会在任何其他 View Controller 中包含选项卡栏 Controller ,否则您的应用可能会出现异常行为或在某个时候停止工作。

如果您想让事情完全按照您的意愿行事,您可以直接使用 UITabBar,并实现您自己的 UITabBarDelegate。

关于ios - UITabBar 选项卡推送新的 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20892030/

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