2011. 12. 1. 16:09

[Xcode 4.2] 스토리보드에서 뷰전환시 데이터 처리

Xcode 4.2 에서는 스토리보드를 이용해 뷰를 push 할 수 있다.
이때 Segue라는 것이 생성되는데, 이 Segue에 Identifier를 주고,
이에 따른 처리를 prepareForSegue 메서드를 이용해 처리할 수 있다.

사용예)
버튼 6개중 하나를 선택해 뷰전환을 할때 전환된 뷰에서 선택한 버튼이 어떤 것인지 알아야할때

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    ContentViewController *contentViewController = (ContentViewController *)[segue destinationViewController];
   
    if ([[segue identifier] isEqualToString:@"btn1Touched"]) {       
        contentViewController.currentMenu = 1;
    }
    else if ([[segue identifier] isEqualToString:@"btn2Touched"]) {
        contentViewController.currentMenu = 2;
    }
    else if ([[segue identifier] isEqualToString:@"btn3Touched"]) {
        contentViewController.currentMenu = 3;
    }
    else if ([[segue identifier] isEqualToString:@"btn4Touched"]) {
        contentViewController.currentMenu = 4;
    }
    else if ([[segue identifier] isEqualToString:@"btn5Touched"]) {
        contentViewController.currentMenu = 5;
    }
    else if ([[segue identifier] isEqualToString:@"btn6Touched"]) {
        contentViewController.currentMenu = 6;
    }
    else {
        contentViewController.currentMenu = 0;
    }