0

나는 ios.I에 익숙하지 않습니다. 코드를 디버깅 중이며 기능을 이해하지 못하는 다음 줄을 살펴 보았습니다. 아무도 모른다면 알려주십시오.이 코드의 기능을 알려주십시오

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

    if ([segue isKindOfClass: [SWRevealViewControllerSegue class]]) { 

     SWRevealViewControllerSegue *swSegue = (SWRevealViewControllerSegue*) segue; 
     __typeof(self) __weak weakSelf = self; 

     swSegue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc){ 

      UINavigationController* navController = (UINavigationController*) weakSelf.revealViewController.frontViewController; 
      [navController setViewControllers: @[dvc] animated: NO ]; 
      [weakSelf.revealViewController setFrontViewPosition: FrontViewPositionLeft animated: YES]; 

     }; 

    } 

} 
+0

__typeof (self) __weak weakSelf = self; 유지 보수주기를 피하기 위해 컨트롤러에 대한 약한 참조를 얻습니다. – Pawan

답변

4

당신은 "prepareForSegue"방법

새로운의 ViewController에 밀어 수 있습니다하지만이 코드에서 사용자 정의 SEGUE이

SWRevealViewControllerSegue의 ViewController 대상의 푸시 동안 기본 애니메이션 대신 수행 할 것 인 사용자 정의 segue에 대한 클래스, 거기에 푸시 애니메이션 코드를 볼 수 있습니다.