我正在尝试制作一个简单的动画。我想使用 [UIView animateWithDuration.... 将 UIImageView 向右移动....
这是我的代码:
文件.h
{
IBOutlet UIImageView *moveImage;
}
文件.m
- (void)viewDidLoad
{
[super viewDidLoad];
//Move Image
moveImage.center = CGPointMake(moveImage.center.x, moveImage.center.y);
[UIView animateWithDuration:2.0
animations:^{ moveImage.center = CGPointMake(moveImage.center.x + 60.0, moveImage.center.y); }];
}
当我运行 iOS 模拟器时,它会在新的 x 坐标处显示图像,但它不会 显示动画。任何帮助将不胜感激。提前谢谢你。
最佳答案
你应该使用 ViewDidAppear 而不是 ViewDidLoad
ViewDidLoad 表示 View 已加载到内存,但未绘制。所以此时您看不到动画。
viewDidAppear 表示 View 被绘制。因此,您可以在显示 View 后制作动画。
-(void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
moveImage.center = CGPointMake(moveImage.center.x, moveImage.center.y);
[UIView animateWithDuration:2.0
animations:^{ moveImage.center = CGPointMake(moveImage.center.x + 60.0, moveImage.center.y); }];
}
关于ios - 移动和动画 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420839/