ボタン接続を新しいビューにドラッグし、プッシュまたはモーダルの代わりにカスタムセグを選択します。
変更「mySegueClass1」や、これまで何あなたがそれを呼び出すしたいと、新しいカスタムセグエのクラス。
あなただけのカスタムセグエに割り当てられたのと同じ名前で、新しいObjective-Cのクラスを作成します。
その後、あなたのmySegueClass1.mファイル内の次のコードを追加し、-(void)perform
-(void)perform{
UIViewController *dst = [self destinationViewController];
UIViewController *src = [self sourceViewController];
[dst viewWillAppear:NO];
[dst viewDidAppear:NO];
[src.view addSubview:dst.view];
CGRect original = dst.view.frame;
dst.view.frame = CGRectMake(dst.view.frame.origin.x, 0-dst.view.frame.size.height, dst.view.frame.size.width, dst.view.frame.size.height);
[UIView beginAnimations:nil context:nil];
dst.view.frame = CGRectMake(original.origin.x, original.origin.y, original.size.height, original.size.width);
[UIView commitAnimations];
[self performSelector:@selector(animationDone:) withObject:dst afterDelay:0.2f];
}
- (void)animationDone:(id)vc{
UIViewController *dst = (UIViewController*)vc;
UINavigationController *nav = [[self sourceViewController] navigationController];
[nav popViewControllerAnimated:NO];
[nav pushViewController:dst animated:NO];
}
私は今日このコードを実装する機会がありました(妻は赤ちゃんでした)。このような徹底的な対応をするのに十分な時間をとっていただきありがとうございます。 – cmutchler
何も問題なく、おめでとうございます! –