效果

1.gif
附上代碼
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
GoViewController *goVC= [[GoViewController alloc]init];
[UIView beginAnimations:nil context:NULL];
//設(shè)置動(dòng)畫塊中的動(dòng)畫屬性的變化的曲線
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
//設(shè)置持續(xù)時(shí)間
[UIView setAnimationDuration:0.5];
/**
UIViewAnimationTransitionNone, 不使用動(dòng)畫
UIViewAnimationTransitionFlipFromLeft, 從左向右翻轉(zhuǎn)
UIViewAnimationTransitionFlipFromRight, 從右向左翻轉(zhuǎn)
UIViewAnimationTransitionCurlUp,卷曲翻頁, 從下往上
UIViewAnimationTransitionCurlDown, 卷曲翻頁, 從上往下
*/
//設(shè)置過度的動(dòng)畫效果
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO];
[self.navigationController pushViewController:goVC animated:YES];
//提交動(dòng)畫
[UIView commitAnimations];
}
第二種方式:
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
GoViewController *goVC= [[GoViewController alloc]init];
goVC.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:goVC animated:YES completion:nil];
}