小问题:
推送 View Controller 时如何去除蓝色圆圈中的阴影?
长问题: 我的应用程序就像 facebook。有一个 NewsFeed View 、Detail post View 和 Page View 。这是我的界面构建器中的内容:
HomeViewController
是 NewsFeed View ,DetailPostViewController
是详细页面 View ,FirstViewController
是页面 View 。 HomeViewController
嵌入到 UINavigationController
中,后者嵌入到 UITabBarController
中。
当我从 FirstViewController
推送到 DetailPostViewController
时,这是完全正常的。 (注意我不是用segue来push的,而是storyboard ID)
但是当我从 DetailPostViewController
推送到 FirstViewController
时,导航栏上有一个奇怪的阴影,就像重叠一样。但我不想那样。 (不使用 segue,而是 Storyboard ID)
这是我推送到 FirstViewController
var vc = self.storyboard?.instantiateViewControllerWithIdentifier("PageViewController") as! FirstViewController
self.navigationController?.pushViewController(vc, animated: true)
如何使从 DetailPostViewController
到 FirstViewController
的推送看起来正常?我尝试使用 segue 但它没有用。已经尝试了这么久,但仍然没有运气。谢谢。
最佳答案
我遇到了同样的问题。就我而言,我使用 inputAccessoryView
属性在 UIViewController 的底部显示我的自定义工具栏
事实证明,问题是因为我的 View Controller 在动画开始时是第一响应者。
我认为你应该试试 navigationController?.setToolbarHidden(true, animated: true)
当你执行推送时。或者找到其他方法在推送动画之前隐藏工具栏。
对我来说,这段代码解决了问题,以防有人遇到类似问题
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
resignFirstResponder()
}
关于ios - 推送 View Controller 时导航栏上不需要的阴影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30509143/