我应该在iOS上使用GIF文件或动画代码吗?

Bin*_* Le 4 iphone animation calayer ios

我打算在iOS上制作一个闪屏,包括一个人,一个椅子对象.这些物体中的每一个都具有分离的方面,如手,头,身体和动画在一起的脚.我想知道哪个更好的方式去?导入GIF文件或编码CALayer对象然后添加动画?

Lio*_*ion 6

您无法在启动画面(启动画面)中使用GIF文件或任何动画代码,您只能使用静态图像,PNG或JPG(如果启动画面是故事板).

所以,如果你想要你的应用程序的启动有一些动画,那么你应该在你的第一个视图控制器中管理它.

您可以imageview使用图像集来设置动画,

UIImageView* myImageViewForAnimation = [[UIImageView alloc] initWithFrame:self.view.bounds];
myImageViewForAnimation.animationImages = [NSArray arrayWithObjects:
                                     [UIImage imageNamed:@"image1"],
                                     [UIImage imageNamed:@"image2"],
                                     [UIImage imageNamed:@"image3"],
                                     [UIImage imageNamed:@"image4"], nil];
myImageViewForAnimation.animationDuration = 1.0f;
myImageViewForAnimation.animationRepeatCount = 0;
[myImageViewForAnimation startAnimating];
[self.view addSubview: myImageViewForAnimation];
Run Code Online (Sandbox Code Playgroud)

更新(如评论中所述):

您可以gesture recognizer在操作方法中获取已添加的视图,也可以设置tag为每个imageview并在操作方法中处理它.

例如,

 -(void)tapOnProfileImage : (UITapGestureRecognizer*)recog{


UIImageView *tempView = (UIImageView *)recog.view;

// or

if (recog.view.tag == 1) {

    // image 1
}

if (recog.view.tag == 2) {
    //image 2
}
}
Run Code Online (Sandbox Code Playgroud)

因此,在每个图像视图上,您​​应该add target with selector - tapOnProfileImage可以区分它,如上面的代码片段所述!