2

私は iOS アプリで UIImageView.animationImages を使用して、UIImage オブジェクトの配列を以下にリストされているアニメーション用のメソッドに渡すことで、多くのアニメーションを実行します。現在、私のUIImageオブジェクトの配列には、個別のPNGファイルが含まれています。個別のPNGファイルの配列を渡す代わりに、スプライトシートを使用して渡すことで、同様のアニメーションを実行できることを私は知っています。スプライト シートが別の目的で使用される場合と比べて、どのような利点がありますか?

- (void) startImageViewAnimation:(UIImageView *)imageView WithImages:(NSArray*)imageArray orBuildArrayWithImage:(NSString *)imageName duration:(CGFloat)duration repeatCount:(NSInteger)repeatCount soundFile:(NSString *)soundFile stopSoundAfterDuration:(CGFloat) stopSoundDuration
{

    if([imageName length] != 0)
    {
        NSMutableArray *array = [[NSMutableArray alloc] init];
        UIImage *image;
        int index = 1;
        NSString *string;
        do
        {
            string = [NSString stringWithFormat:@"%@%02d.png", imageName, index++];
            image = [UIImage imageNamed:string];
            if(image)
                [array addObject:image];
        } while (image != nil);

        imageView.animationImages = array;
        [array release];
    }
    else
    {
        imageView.animationImages = imageArray;
    }
    imageView.animationDuration = duration;
    imageView.animationRepeatCount = repeatCount;
    [imageView startAnimating];

    if([soundFile length] != 0)
    {
        [self loadSoundEffectAudio:soundFile];
    }
}
4

1 に答える 1