【问题标题】:Navigation Item not visible in interface builder after adding segue添加 segue 后,导航项在界面生成器中不可见
【发布时间】:2017-08-24 08:38:18
【问题描述】:
我有自定义 UIView,它使用 .xib 文件。我正在视图控制器内的情节提要中添加此视图。之后,我向其中添加了 TapGestureRecognizer。然后我将 segue 附加到点击手势识别器(无需代码即可通过这种方式从自定义视图执行 segue)。
问题是,导航项未显示在界面构建器中。当我构建和运行应用程序时,导航在屏幕上,一切都按预期工作。
当我将 segue 从 VC 添加到 VC 时,导航栏会显示在界面生成器中。为什么我会出现这种行为?
【问题讨论】:
标签:
ios
swift
storyboard
segue
uinavigationitem
【解决方案1】:
对我来说,这似乎是 Interface Builder 中的一个错误。
对于这种情况,我看到了两种可能的解决方法:
将 segue 从 ViewController 连接到 ViewController。给它一个标识符。使用@IBAction 中的performSegue(withIdentifier:sender:) 以编程方式调用它,用于您的点击手势识别器。这样做的缺点是需要添加代码。
将 Navigation Bar 添加到 ViewController,方法是将 Attributes Inspector -> Simulated Metrics -> Top Bar 设置为 Translucent Navigation Bar .这使您可以在 Interface Builder 中看到 导航栏。这样做的缺点是您需要为链中的每个 ViewController 执行此操作。