gpt4 book ai didi

ios - 导航后损坏的导航栏

转载 作者:可可西里 更新时间:2023-11-01 00:59:19 25 4
gpt4 key购买 nike

这是目前的情况:

UITabBarController
UINavigationController
UIPageViewController
Some UIViewControllers (the actual content)

因此 UIPageViewController 包含一些 UIViewController,它们都包含一个 UITableView。

This is what the Apps looks like

当我单击 UITableView 中的其中一行时,UIViewController 调用 didSelect 方法。该方法如下所示:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
let activity = self.activities[indexPath.row - 1]
self.delegate?.dayTableViewSelectedActivity(activity, sender: self)
}

然后 UIPageViewController 实现了协议(protocol),因此调用了委托(delegate)方法。该方法如下所示:

func dayTableViewSelectedActivity(activity: Activity, sender: DayTableViewController) {
self.performSegueWithIdentifier("openDetails", sender: activity)
}

然后应用程序导航(推送)到 DetailViewController。当我向后滑动(默认 iOS 行为)时,DetailViewController 立即弹出到 UIPageViewController,没有动画。然后我的导航栏坏了,包含一个不属于那里的后退按钮,因为我不能再返回了。

Broken navigation bar

当我再次单击一个单元格时,控制台会给我一条nested push animation can result in corrupted navigation bar消息。我从那里采取的每项行动都会给我带来更多控制台错误,例如:

nested pop animation can result in corrupted navigation bar
Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.

这个错误让我沮丧了好几个小时,我不知道自己做错了什么。没有双重转场。我检查了很多次。我希望你们能帮助我。

最佳答案

经过几个小时的努力,我在这里找到了答案:Pop animation is not working in first UINavigationController of UITabbarController

我的 UITTabBarController 确实有一个子类,它覆盖了 viewDidAppear 方法。我添加了 super.viewDidAppear,现在一切正常。

关于ios - 导航后损坏的导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37688748/

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