0
UIStoryboardSegue
leftToRightSegue
이라는 사용자 정의가 있습니다. 이 segue가 트리거 될 때마다 원본보기로 돌아가서 sourceViewController
의 viewdidload
메서드가 호출됩니다. 이것은 설정이 상당히 무거 우므로 원하는 것이 아닙니다.맞춤 푸시 segue 후 SourceViewController 유지
UIViewController *sourceViewController = (UIViewController*)[self sourceViewController];
CATransition* transition = [CATransition animation];
transition.duration = .25;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromRight;
[sourceViewController.navigationController.view.layer addAnimation:transition
forKey:kCATransition];
[sourceViewController.navigationController popViewControllerAnimated:NO];
가 어떻게이 sourceViewController을 유지합니까 : 내가 관심있는 사람들을 위해, 다시보기 터지는 사실입니다
#import "LeftToRightPushSegue.h"
#import "QuartzCore/QuartzCore.h"
@implementation LeftToRightPushSegue
-(void)perform {
UIViewController *sourceViewController = (UIViewController*)[self sourceViewController];
UIViewController *destinationController = (UIViewController*)[self destinationViewController];
CATransition* transition = [CATransition animation];
transition.duration = .25;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromLeft;
[sourceViewController.navigationController.view.layer addAnimation:transition
forKey:kCATransition];
[sourceViewController.navigationController pushViewController:destinationController animated:NO];
}
:
이
은 내가 SEGUE을 위해 사용하고 코드?
'UIViewController'의'-viewDidLoad'는 뷰 계층 구조가 펜촉에서부터 또는 프로그램 적으로 메모리로로드 될 때 호출됩니다. 더 많은 코드를 게시하면,'-sourceViewController'를 호출 할 때 문제가 발생할 수 있습니다. – Michael
팝세그를 게시 하시겠습니까? 위의 코드는 모두 푸시를위한 것입니다. – bdv
'[sourceViewController.navigationController popViewControllerAnimated : NO];에 대해 더 많은 코드를 제공 할 수 있습니까? 그것이 어디에서 호출되었고'sourceViewController'에서 포인터를 얻는 방법은 명확하지 않습니다. –