gpt4 book ai didi

ios - 导航栏进入困惑状态

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

这个 bug 最早是在 iOS 7 中发现的,在 iOS 8 中也可以重现。

有一个三个 View Controller A、B 和 C。由 UINavigationController 管理。而且我想隐藏 Controller A 的导航栏,而不是其他人。

这是我为 Controller A 编写的代码。

- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];

self.navigationController.navigationBarHidden = YES;
}

- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];

self.navigationController.navigationBarHidden = NO;
}

当用户通过导航 backBarButtonItem 返回时,它对我来说很好。但是当用户滑动 backwardsforward从左侧(也就是实际上并没有从 Controller B回到 Controller A,而是最后停留在 Controller B中),导航栏会进入困惑状态。

这是一个演示此问题的演示:[演示]: https://github.com/heistings/NavigationTest

这个问题可以通过禁用导航 Controller 的interactivePopGestureRecognizer来简单解决,但不能说完美:
self.navigationController.interactivePopGestureRecognizer.enabled = NO;

最佳答案

使用 animated属性(property)给 YES .

- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
}

- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}

也许这会对你有所帮助。

关于ios - 导航栏进入困惑状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29226389/

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