我正在尝试使用Xcode 6 Beta 4和Swift从ViewController(loginScreen)连接一个新的空View(homeScreen)。按钮触发segue到homeScreen视图。问题是,当我添加segue时,我的空白/空homeScreen视图会在视图顶部神奇地获得一个导航项目栏。
你可以看到没有segue我的homeScreen查看它的空:
在segue之后它看起来像这样:
如您所见,Xcode在顶部插入导航项目栏(灰色矩形)。我想知道如何摆脱它或如何创建一个空视图,即使在为它指定了一个segue之后仍然是空的。
非常感谢你的帮助!
干杯!
更新:我的目标是创建一个类似于Facebook在其iOS应用中实现的导航栏。在顶部有搜索栏,也许还有一些图标。有谁知道怎么做?我试图通过选择我的视图控制器来隐藏导航栏,并在“属性”检查器中将“顶栏”属性设置为无,但它不起作用。有什么建议吗?
再次感谢。
答案 0 :(得分:0)
loginScreen 是否位于 UINavigationController 中?如果是,新的显示视图控制器( homeScreen )也应该在导航控制器中,因此默认情况下它有一个导航栏。
如果需要,您可以隐藏它,但是您必须找到一种在导航控制器中导航的替代方法。
否则,您可以将 homeScreen 以模态方式将segue的类型更改为“Present Modally”。
有关视图控制器演示的更多详细信息,请参阅this document以及iOS8中的一些更新(WWDC会话:iOS8中的View Controller Advancement)。
编辑:要实现类似FB的导航栏,我会自定义UINavigationController栏:
let searchBar = UISearchBar() ... self.navigationItem.titleView = self.searchBar
答案 1 :(得分:0)
这是因为segue是" push" segue("显示(例如推送)")来自已包含在导航控制器中的View控制器。因此,它被放在此导航控制器的堆栈视图中,因此会收到导航栏。
如果您不想要导航栏,请使用模态segue("以模态方式呈现")或自定义segue。
如果您需要不同的导航栏(未链接到第一个导航控制器),则相同。你可以完美地拥有一个模态segue,通向一个UIViewController,它嵌入在它的OWN导航控制器中(或者只有一个导航栏)。看看菜单:"编辑/嵌入/导航控制器"。