iOS - 包含和不包含Storyboard的实用程序应用程序模板(Xcode 4.3) - 混乱

时间:2012-03-13 13:58:23

标签: iphone xcode ios5 storyboard

当我在Xcode(4.3)中使用实用程序应用程序模板时没有 故事板我看到以下代码打开翻转侧视图。

我看到模板创建了一个名为ShowInfo的IBAction(它连接到 IB中的按钮

#pragma mark - Flipside View

- (void)flipsideViewControllerDidFinish:(FlipsideViewController *)controller
{
    [self dismissModalViewControllerAnimated:YES];
}


- (IBAction)showInfo:(id)sender
{    
    FlipsideViewController *controller = [[FlipsideViewController alloc] initWithNibName:@"FlipsideViewController" bundle:nil];
    controller.delegate = self;
    controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:controller animated:YES];
}

这次使用Storyboard创建另一个实用程序应用程序时,我看到以下代码:

 #pragma mark - Flipside View

 - (void)flipsideViewControllerDidFinish:(FlipsideViewController *)controller
 {
 [self dismissModalViewControllerAnimated:YES];
 }

 - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
 {
 if ([[segue identifier] isEqualToString:@"showAlternate"]) {
 [[segue destinationViewController] setDelegate:self];
 }
 }

你能解释一下代码和IB中的按钮之间的联系吗? 想了解按钮如何执行代码以打开反面。

提前致谢

马克

1 个答案:

答案 0 :(得分:0)

连接在故事板内。它被称为segue,它连接到mainViewController右下角的info按钮。 segue有一个名为“showAlternate”的标识符,它从类FlipSideViewController创建一个新的模态(带有水平翻转动画)viewController。
FlipSideViewController需要一个委托,因此它可以关闭自己,并在prepareForSegue:sender:方法中设置该委托。

enter image description here


看看这个伟大的歌曲:Beginning Storyboards in iOS 5 Part 1 (raywenderlich.com)