在iOS中的容器视图内动画图像视图?

时间:2015-05-25 10:43:10

标签: ios objective-c autolayout nsautolayout ios-autolayout

我正在尝试为容器视图中的图像视图设置动画。 容器视图是方形且对齐屏幕的中心。我的容器里面有一个图像视图。我的图像视图的位置显示在下面的屏幕截图中。(超级视图是我的容器视图)

enter image description here

我想为容器内的图像视图设置动画,例如从顶部0到底部0,所以我尝试从顶部0到顶部最大值(即容器视图的高度)动画,但它没有按预期工作。我的预期输出类似于图像视图应在容器视图内从上到下连续动画并反转。

我试过的动画方法是

int maxTop = self.containerView.frame.size.height/2;
self.topConstraint.constant = maxTop;
[self.imageView setNeedsUpdateConstraints];
[UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionRepeat|UIViewAnimationOptionAutoreverse animations:^{
    [self.imageView layoutIfNeeded];
} completion:nil];

编辑: 这是当前输出的GIF。它没有移动到全高度 GIF

1 个答案:

答案 0 :(得分:0)

动画应该在viewDidAppear之后启动,因此父视图可以正确对齐。