简短问题:
如何在推动视图控制器时删除蓝色圆圈中的阴影?
长问题:
我的应用程序就像facebook。有一个NewsFeed视图,详细信息发布视图和页面视图。以下是我的界面构建器中的内容:
HomeViewController
是NewsFeed视图,DetailPostViewController
是详细信息页面视图,FirstViewController
是页面视图。 HomeViewController
嵌入到UINavigationController
中,UITabBarController
嵌入FirstViewController
。
从DetailPostViewController
推送到DetailPostViewController
是完全正常的。 (注意我不使用segue来推送,但是故事板ID)
但是当我从FirstViewController
推送到FirstViewController
时,导航栏上会出现一个奇怪的阴影,就像重叠一样。但我不希望这样。 (不使用segue,但是故事板ID)
这是我的代码推送到var vc = self.storyboard?.instantiateViewControllerWithIdentifier("PageViewController") as! FirstViewController
self.navigationController?.pushViewController(vc, animated: true)
DetailPostViewController
如何从FirstViewController
推送到 stuckey <- read.csv2("C:/kalle/R/stuckey.csv", header=TRUE, sep=";", dec=",")
看起来正常?我尝试使用segue但它没有用。尝试了这么久但仍然没有运气。感谢。
答案 0 :(得分:2)
我有同样的问题。在我的例子中,我使用inputAccessoryView
属性在UIViewController底部显示我的自定义工具栏
事实证明,问题是因为我的视图控制器是动画开头的第一个响应者。
我认为你应该试试navigationController?.setToolbarHidden(true, animated: true)
当你进行推动时。或者在推动动画之前找到另一种隐藏工具栏的方法。
对我来说,这个代码修复了问题,万一有人有类似的问题
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
resignFirstResponder()
}
答案 1 :(得分:0)
我认为你在两个实例中都得到了影子,如果你打算使用内置的过渡,你无能为力。 iOS正在将其添加到视图层次结构中,作为过渡的一部分。
您可以尝试使用自定义转换:http://www.objc.io/issue-12/custom-container-view-controller-transitions.html。在这种情况下,我认为您可以完全控制转换中涉及的视图。但要消除这种阴影会有很多工作。
答案 2 :(得分:-1)
尝试使用此功能推送使用导航控制器
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
查看本教程NavigationController