【问题标题】:transition effect when moving from one view to another从一个视图移动到另一个视图时的过渡效果
【发布时间】:2012-08-28 20:05:09
【问题描述】:

从一个视图移动到另一个视图时如何添加过渡效果?

例如当单击按钮时调用 addSubView 时,会加载一个新视图。这样做时我想要像“滑入”这样的过渡效果/动画? 另外,返回原视图时如何添加“滑出”过渡?

请帮忙

【问题讨论】:

标签: ios uiview transition


【解决方案1】:

这可以通过简单的UIView 动画来完成。这里有几个例子。

这将使 alpha 从 0.0 变为 1.0,从而产生淡入效果:

UIView *secondView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
[secondView setAlpha:0.0];
[self.view addSubview:secondView];

[UIView animateWithDuration:1.0 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
    [secondView setAlpha:1.0];
}completion:^(BOOL done){
    //Some completion handler!
}];

然后您可以深入了解CGAffineTransforms 来处理移动视图。此示例将从屏幕的左下角移入新视图。

UIView *secondView = [[UIView alloc] initWithFrame:CGRectMake(320, 480, 320, 480)];
[self.view addSubview:secondView];

[UIView animateWithDuration:1.0 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
    [secondView setTransform:CGAffineTransformMakeTranslation(-320, -480)];
}completion:^(BOOL done){
    //Some completion handler!
}];

使用这些块,您几乎可以制作任何您想要的简单到中间动画。

【讨论】:

  • 嗨,谢谢...我希望在我的应用程序的所有视图中都这样做。如何为整个应用程序执行一次,而不是为每个视图单独执行一次?
猜你喜欢
  • 1970-01-01
  • 2013-03-27
  • 1970-01-01
  • 1970-01-01
  • 2021-10-15
  • 1970-01-01
  • 2019-05-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多