0

我有一个CGRectMake用来将图像跳转到不同位置的

image.frane=CGRectMake( x,y,w,h);

然后我想将Label(在同一个ViewController)翻译和缩放到另一个位置

CGPoint newCenter = CGPointMake(x,y);
[UIView animateWithDuration: 1.0
    delay: 0
    options: 0
    animations:^{label.center = newCenter ; label.transform = CGAffineTransformScale(CGAffineTransformIdentity, 0.2, 0.2);}
                     completion:^(BOOL finished) {
                         label.transform = CGAffineTransformMakeScale(1.0, 1.0);
                         label.alpha = 0;
    }
];

我遇到的问题是当我使用图像时animateWithDuration,图像不会移动,但会移动Label。如果我注释掉动画,图像会再次移动。难道我做错了什么?

4

1 回答 1

0

试试下面的代码......

[UIView animateWithDuration:1.0f animations:^{
    imageView.frame = CGRectMake(newCenter.x, newCenter.y, imageView.frame.size.width, imageView.frame.size.height);
}];

您也可以使用以下代码移动UIImageView或其他任何内容...我使用此代码UIScrollView在键盘出现时滚动...我根据您的要求添加代码..

UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0f];
imageView.frame = CGRectMake(newCenter.x, newCenter.y, imageView.frame.size.width, imageView.frame.size.height);
[UIView commitAnimations];

我希望这对你有帮助......

于 2013-01-10T10:49:18.520 回答