【发布时间】:2015-08-20 10:28:50
【问题描述】:
我有一个视图控制器,它有一个带有两个按钮的 UISegmentControl。我加载这个视图,当 SegmentValue 发生变化时,我会在视图中添加一个视图控制器。
这是主视图控制器
在我定义控制器的类中
var tabNavigation: UISegmentedControl!
let viewController1:ViewController1 = ViewController1()
let viewController2:ViewController2 = ViewController2()
// 创建段控件
self.tabNavigation = UISegmentedControl(items: ["v1", "v2"])
self.tabNavigation.selectedSegmentIndex = 0
self.tabNavigation.frame = CGRectMake(60, 250, 130, 25)
self.tabNavigation.addTarget(self, action: "segmentedValueChanged", forControlEvents: .ValueChanged)
self.navigationItem.titleView = self.tabNavigation
// set first view
self.addChildViewController(viewController1)
self.view.addSubview(viewController1.view)
// 段改变了
func segmentedValueChanged() {
if (self.tabNavigation.selectedSegmentIndex == 0) {
self.addChildViewController(viewController1)
self.view.addSubview(viewController1.view)
} else {
self.addChildViewController(viewController2)
self.view.addSubview(viewController2.view)
在故事板中,我有一个从 MainViewController 到 ViewController3 的 segue
现在在 ViewController1 中,我正在尝试创建一个从 ViewController1 到 ViewController3 的 segue(应该是以前导航控制器的一部分,因此请使用后退按钮滑动)。但是由于 ViewController1 完全由代码制成,因此 segue 不存在而失败。
我的 segue 代码如下,但显然失败了,因为这是 MainViewController 到 ViewController3 的 segue 标识符
performSegueWithIdentifier("loadVC3", sender: nil)
【问题讨论】:
-
我还应该注意,我尝试在情节提要中添加 ViewController1,只对 ViewController3 进行 segue,但仍然失败并显示“没有标识符的 segue”