我正在使用带有以下代码的导航控制器来实现我的推送权限……
- (IBAction)launch1990:(ID)sender {UIStoryboard *storyboard = [UIStoryboard storyboarDWithname:@"1990Storyboard" bundle:nil];UIVIEwController *vc = [storyboard instantiateVIEwControllerWithIDentifIEr:@"1990"];[self.navigationController pushVIEwController:vc animated:YES];}@H_502_16@解决方法 UIStroryBoard当您按下视图控制器或segues时,它不会让您自定义太多.我最终做的是覆盖perform方法并使用QuartzCore Animations来定制我们的转换.我将UIStoryBoardSegue子类化并覆盖了执行函数.
下面为Push或Pop定制,然后为Segues定制. (对于segues,请记住将类更改为IB中的自定义类).
要从正常的d出或推动(这确实交叉淡入淡出动画,为你的调整):
#import <QuartzCore/QuartzCore.h> - (IBAction)launch1990:(ID)sender { CATransition* Transition = [CATransition animation]; Transition.duration = .45; Transition.timingFunction = [camediatimingFunction functionWithname:kcamediatimingFunctionEaseInEaSEOut]; Transition.type = kCATransitionFade; [self.navigationController.vIEw.layer addAnimation:Transition forKey:kCATransition]; UIStoryboard *storyboard = [UIStoryboard storyboarDWithname:@"1990Storyboard" bundle:nil]; UIVIEwController *vc = [storyboard instantiateVIEwControllerWithIDentifIEr:@"1990"]; [self.navigationController pushVIEwController:vc animated:NO]; }
要从segue做到这一点:
//ZHCustomSegue.h#import <Foundation/Foundation.h>@interface ZHCustomSegue : UIStoryboardSegue@end// ZHCustomSegue.m#import "ZHCustomSegue.h"#import "QuartzCore/QuartzCore.h"@implementation ZHCustomSegue-(voID)perform { UIVIEwController *sourceVIEwController = (UIVIEwController*)[self sourceVIEwController]; UIVIEwController *destinationController = (UIVIEwController*)[self destinationVIEwController]; CATransition* Transition = [CATransition animation]; Transition.duration = .45; Transition.timingFunction = [camediatimingFunction functionWithname:kcamediatimingFunctionEaseInEaSEOut]; Transition.type = kCATransitionFade; //kCATransitionMoveIn; //,kCATransitionPush,kCATransitionReveal,kCATransitionFade //Transition.subtype = kCATransitionFromleft; //kCATransitionFromleft,kCATransitionFromright,kCATransitionFromtop,kCATransitionFromBottom [sourceVIEwController.navigationController.vIEw.layer addAnimation:Transition forKey:kCATransition]; [sourceVIEwController.navigationController pushVIEwController:destinationController animated:NO];}@end总结
以上是内存溢出为你收集整理的iphone – 左侧的PushViewController – 简单?全部内容,希望文章能够帮你解决iphone – 左侧的PushViewController – 简单?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)