【问题标题】:Xcode 11 UINavigationController Bar problemsXcode 11 UINavigationController 栏问题
【发布时间】:2020-02-03 19:59:41
【问题描述】:

自从 Xcode 11 发布以来,我一直在尝试修复我的应用程序。状态栏 + 导航栏出了点问题,我一直在尝试的任何东西似乎都没有工作,我似乎也找不到任何相关问题。

我尝试使用更少/更多选项卡来实例化选项卡栏控制器。我尝试更改顺序。我尝试在 Tab Bar 控制器上使用导航栏而不是单个视图控制器。

由于某种原因,选项卡栏控制器中的第一个视图控制器(UINavigation 控制器的根)没有问题,但是当我更改选项卡时,导航栏会被向上推。

我添加了 2 个屏幕截图来显示正在发生的事情。第一张图片显示了应用程序的正确方式,第二张图片显示了导航栏被推入状态栏。

[UIView transitionFromView:self.window.rootViewController.view
                    toView:viewController.view
                  duration:0.55f
                   options: UIViewAnimationOptionTransitionCrossDissolve
                completion:^(BOOL finished){
                    self.window.rootViewController = viewController;

                }];

【问题讨论】:

  • 如果您需要帮助,您必须说明在做什么。你是让这一切以某种方式发生的人。但是我们对你的应用程序、视图控制器、segues、代码一无所知。制作一个演示问题的小型示例项目,并对其进行描述或(最好)将其发布以供下载。
  • 分享设置rootViewController的代码。并为 tabController 视图外观动画添加了任何动画?
  • 我没有使用任何情节提要。我只是将标签栏控制器设置为带有导航控制器数组的 window.root 视图控制器,每个控制器都有一个根视图控制器。
  • @matt 我什至不确定这里发生了什么。在 iOS 13 和 xcode 11 之前这一切都很好。正如我上面所说,我没有为这个项目使用任何故事板。我正在以编程方式设置所有内容。我想也许其他人在更新后遇到了类似的问题
  • “我正在以编程方式设置一切”完美!因此,如果您需要帮助,请显示代码。我们可以确定您是否“以编程方式设置”错误。

标签: ios xcode uinavigationcontroller uitabbarcontroller


【解决方案1】:

我注意到 IOS 13 中的 transitionFromView 发生了与 IOS 12 不同的变化。要查看这是否是您的问题,请尝试设置 self.window.rootViewController = viewController;没有转换代码块,看看你是否还有问题。

self.window.rootViewController = viewController;
/*
[UIView transitionFromView:self.window.rootViewController.view
                    toView:viewController.view
                  duration:0.55f
                   options: UIViewAnimationOptionTransitionCrossDissolve
                completion:^(BOOL finished){
                    self.window.rootViewController = viewController;

                }];
*/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-10
    • 2020-02-26
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多