大佬教程收集整理的这篇文章主要介绍了ios – Tweetbot就像缩小视图转换一样,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
The Tweetbot transition I mean http://www.yoeri.me/files/tweetbot-transition.gif
因为没有可能改变viewController.view的框架,你必须添加一种容器子视图,如下所示:
@implementation ViewController @synthesize container; - (void)viewDidLoad { [super viewDidLoad]; container = [[UIView alloc] initWithFrame:self.view.frame]; [self.view addSubview:container]; // add all views later to this insted of self.view // conTinue viewDidLoad setup }
现在,如果你有这个,你可以像这样动画缩小的行为:
[UIView animateWithDuration:.5 animations:^{ container.frame = CGRectMake(10,17,self.view.frame.size.width-20,self.view.frame.size.height-34); }];
好吧,我假设您正在为iOS 7开发,所以我们将在这里使用一些新的API(对于早期版本,有替代框架).现在,自WWDC UIView获得resizableSnapshotViewFromRect:(CGRect)afterScreenupdates:(BOOL)withCapInsets:(UIEdgeInsets)方法返回单个UIView对象.
[UIView animateWithDuration:.5 animations:^{ container.frame = CGRectMake(10,self.view.frame.size.height-34); } completion:^(BOOL finished) { UIView *viewToBlur = [self.view resizableSnapshotViewFromRect:container.frame afterScreenupdates:YES withCapInsets:UIEdgeInsetsZero]; }];
如果您不想重写视图管理,您还可以首先以这种方式拍摄主视图的快照,将其设置为容器,然后仅为图像设置动画.但请记住,您无法与捕获的视图进行交互.
当你有了这个,你可以从this repo下载两个类别文件(它们来自WWDC,所以直接来自Apple!).基本上,他们所做的是,他们为UIView类添加了一些很酷的新方法,我们将使用applyDarkEffect.我没有测试过这个,或许另一种方法可以更好地满足您的需求.
无论如何,如果我们将其实现到块中并且还可以添加UIImageView来显示模糊的叠加层,它应该看起来像这样:
[UIView animateWithDuration:.5 animations:^{ container.frame = CGRectMake(10,self.view.frame.size.height-34); } completion:^(BOOL finished) { UIView *viewToBlur = [self.view resizableSnapshotViewFromRect:container.frame afterScreenupdates:YES withCapInsets:UIEdgeInsetsZero]; UIImage *image = [viewToBlur applyDarkEffect]; UIImageView *blurredView = [[UIImageView alloc] initWithFrame:self.view.frame]; [self.view addSubview:blurredView]; // optionally also animate this,to achieve an even smoother effect [blurredView setImage:image]; }];
然后,您可以在堆栈顶部添加SecondViewController的视图,以便仍然可以调用它的委托方法.传入帐户视图的跳出效果可以通过新的UIView动画方法animateWithDuration:(NSTimeInterval)延迟:(NSTimeInterval)usingSpringWithDamping:(CGFloat)initialSpringVeLocity:(CGFloat)选项:(UIViewAnimationOptions)动画:^(void)动画完成:^(BOOL完成)完成(更多关于documentation)
我希望这能帮助你完成你的项目.
以上是大佬教程为你收集整理的ios – Tweetbot就像缩小视图转换一样全部内容,希望文章能够帮你解决ios – Tweetbot就像缩小视图转换一样所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。