如何根据分段控件和添加按钮切换到2个视图?

我在导航控制器的标题中有一个分段控件,我想将一个对象添加到也在此导航控制器中的表视图控制器。

inheritance人问我的问题:

如何从一个[+] UIButton到两个视图中的一个视图,每个分段控件选项的不同添加视图。 你只能从故事板中的UIBarButtonItem挂起一个segue,但我不确定如果我只挂了一个然后在某处更改代码或者如果我必须构建单独的xib文件(我不熟悉,我是iPhone开发人员的新手,或者这是如何工作的!

请帮忙!

你做了我称之为“通用”的segue,它与动作/触发器无关。 请参阅我的答案: 如何制作和使用通用segue

制作其中2个segue,然后在您的IBAction方法中为您的segmentedControl调用performSegueWithIdentifier: . 例如:

 - (IBAction)segmentCtrlChanged:(id)sender { UISegmentedControl *seg = sender; if (seg.selectedSegmentIndex == 0) [self performSegueWithIdentifier:@"segue1" sender:self]; else if (seg.selectedSegmentIndex == 1) [self performSegueWithIdentifier:@"segue2" sender:self]; } 

您的故事板中只需要一个segue。 在你的viewcontroller中,添加

 - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 

方法,并使用switch来决定选择哪个段。

例如

 - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { switch (self.segmentedButton.selectedSegmentIndex) { case 0: { UIView1 *view1 = (UIView1 *)segue.destinationViewController; // do other customization if needed break; } case 1: { UIView2 *view2 = (UIView2 *)segue.destinationViewController; // do other customization if needed break; } default: break; } } 

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIStoryboardSegue_Class/Reference/Reference.html#//apple_ref/doc/c_ref/UIStoryboardSegue