絵コンテで 4 つのシーンを作成する必要があり、すべてがうまく機能しますが、現在、トランジション カバーが垂直のモーダル スタイルを使用しています。モーダル スタイルが必要ですが、水平方向のカバー トランジションが必要です。
シーンにはナビゲーション バーがないため (必要がないため)、丸い四角形のボタンを使用してシーンからシーンに切り替えます。
チュートリアルを見つけ、新しいクラスを作成して perform メソッドをオーバーライドしました。
perfom メソッドを使用した実装ファイルを次に示します。
#import "JHCustomSegue.h"
#import "QuartzCore/QuartzCore.h"
@implementation JHCustomSegue
- (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; //kCATransitionMoveIn; //, kCATransitionPush, kCATransitionReveal, kCATransitionFade
transition.subtype = kCATransitionFromRight; //kCATransitionFromLeft, kCATransitionFromRight, kCATransitionFromTop, kCATransitionFromBottom
[sourceViewController.navigationController.view.layer addAnimation:transition
forKey:kCATransition];
[sourceViewController.navigationController pushViewController:destinationController animated:NO];
}
@end
しかし、トランジションが機能せず、常に最初の画面にとどまり、どのシーンにもチャンスがあります。
例は非常にうまく機能しますが、ナビゲーションバーを使用しているため、私が間違っていることです。
よろしくお願いします。