一、透明视图控制器
WJListMenuViewController *VC = [[WJListMenuViewController alloc]init]; VC.modalPresentationStyle = UIModalPresentationOverCurrentContext; VC.view.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.4]; //设置模态视图弹出样式 VC.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
二、动画
//创建动画 CATransition * transition = [CATransition animation]; //设置动画类型(这个是字符串,可以搜索一些更好看的类型) /* kCATransitionFade 交叉淡化过渡 kCATransitionMoveIn 新视图移到旧视图上面 kCATransitionPush 新视图把旧视图推出去 kCATransitionReveal 将旧视图移开,显示下面的新视图 @"pageCurl" 向上翻一页 @"pageUnCurl" 向下翻一页 @"rippleEffect" 滴水效果 @"suckEffect" 收缩效果,如一块布被抽走 @"cube" 立方体效果 @"oglFlip" 上下翻转效果 moveOut */ transition.type = kCATransitionFade; //动画出现类型 /* kCATransitionFromRight kCATransitionFromLeft kCATransitionFromTop kCATransitionFromBottom fromCenter */ transition.subtype = kCATransitionFromLeft; //动画时间 transition.duration = 1; //移除当前window的layer层的动画 [self.view.window.layer removeAllAnimations]; //将定制好的动画添加到当前控制器window的layer层 [self.view.window.layer addAnimation:transition forKey:nil]; [self presentViewController:nav animated:YES completion:nil];