提供一个modal视图控制器及其需要在屏幕上显示的frame,同时提供一个显示动画块和一个消失动画块。然后转场动画将执行您想要的操作。
modal有两种方法:
第一种是普通显示,这时候您需要自己调用dismiss方法。
第二种类似于弹出菜单,框架会创建一个透明的遮罩视图,当您点击modal视图外的空间时,它将自动消失。
/**
* First way without dumming view
*
* @param modalVC modal view controller
* @param presentFrame modal view frame in screen
* @param presentAnimation present animation block. return timeinterver of animation time
* @param dismissAnimation dismiss animation block. return timeinterver of animation time
* @param completion comletion block
*/
-(void)mk_presentViewController:(UIViewController *)modalVC
withPresentFrame:(CGRect)presentFrame
withPresentAnimation:(NSTimeInterval (^)(UIView *view))presentAnimation
withDismissAnimation:(NSTimeInterval (^)(UIView *view))dismissAnimation
withCompletion:(void (^)(void))completion;
/**
* Second way with dumming view
*
* @param modalVC modal view controller
* @param presentFrame modal view frame in screen
* @param presentAnimation present animation block. return timeinterver of animation time
* @param dismissAnimation dismiss animation block. return timeinterver of animation time
* @param completion comletion block
*/
-(void)mk_presentViewControllerWithDummingView:(UIViewController *)modalVC
withPresentFrame:(CGRect)presentFrame
withPresentAnimation:(NSTimeInterval (^)(UIView *view))presentAnimation
withDismissAnimation:(NSTimeInterval (^)(UIView *view))dismissAnimation
withCompletion:(void (^)(void))completion;
给定一个modal的视图控制器和其在界面上需要显示的frame,再加上一个显示动画和一个消失动画就可以产生一个自定义的modal转场效果。
这里提供了两种调用方式:
/**
/**