【问题标题】:animating images with slide transition overlapping on other views iOS动画图像与幻灯片过渡重叠在其他视图iOS
【发布时间】:2013-02-05 09:54:33
【问题描述】:

我并排有2个imageView,如图:

我需要通过重复动画作为滑动视图来更改这些图像。我通过使用 NSTimer 来做到这一点。

以下是我用于创建动画的代码:

CATransition *animation = [CATransition animation];
[animation setDuration:1];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromRight];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear]] ;

[[imgVwTry layer] addAnimation:animation forKey:@"@asdf"];

但是,Left ImageView 中的动画是从图像视图的边界之外开始的。如下图所示:

让我更清楚地解释一下:

正在发生的动画与 Right ImageView 重叠。但是,我希望动画只发生在为 LeftImageView 指定的区域中。像这样的东西:

我应该在动画代码中进行哪些更改,以便我可以删除重叠。或者有没有其他方法可以为图像设置动画?

还有一个简单的问题, 如果我使用 UIImageView 的 startAnimation 方法,是否可以将动画改为滑动动画?

【问题讨论】:

  • 或许你可以设置原图的背景,而不是使用透明度...
  • rightimageview的背景设置为黑色,但动画是在layer上发生的,所以在背景中添加一些颜色没有关系

标签: iphone ios animation slide catransition


【解决方案1】:

您应该在包含您正在谈论的图像的超级视图上将 clipsToBounds 设置为 YES。这将阻止子视图显示,直到它位于框架的边界内。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多