首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >淡入淡出UIView和切换UIView

淡入淡出UIView和切换UIView
EN

Stack Overflow用户
提问于 2012-08-07 22:26:33
回答 2查看 2.6K关注 0票数 2

这就是我如何从一个UIView切换到另一个UIView:self.view = MyView;如何淡出MySecondView的视图

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-07 22:34:59

您可以使用UIView的内置转换代码在它们之间进行交叉融合。

代码语言:javascript
复制
[UIView transitionFromView:self.view toView:MySecondView duration:0.25 options:UIViewAnimationOptionTransitionCrossDissolve completion:^(BOOL finished) {
    // What to do when its finished.
}];

您还可以使用常规动画选项,如下所示。我没有测试过这段代码,因为我不在Xcode前面,但我一直在使用它来处理标签和没有默认动画的东西。

代码语言:javascript
复制
[UIView animateWithDuration:0.25 animations:^{
    [self.view setAlpha:0.0];
    self.view = mySecondView;
    [self.view setAlpha:1.0];
}];
票数 6
EN

Stack Overflow用户

发布于 2012-08-07 22:41:28

请注意,像self.view = MyView这样做来改变屏幕并不是一个好主意。当您到达几个屏幕时,您的viewController将充满意大利面条代码。您应该考虑提供管理其视图的新视图控制器。淡入淡出的一种方法如下:

  • 将当前视图淡入黑色(带有动画),在您要推送的视图控制器中使用viewDidAppear将视图淡出为黑色。

使用新出现的视图控制器的viewWillAppear方法在视图中淡入淡出(带有动画)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11848140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档