2

1.05 秒にわたってアニメーション化するはずの .png ファイルがたくさんあります。アニメーションの実行後、最後の .png ファイルを永続的に表示したいと考えています。アニメーションを保持するために UIIMageview IBOutlet を使用しています。ただし、アニメーションの実行後、画像が消えて画面に何も表示されません。

アニメーションのコードは次のとおりです。

-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];

static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
    [self loadArrayForTickAnimation];
});


    if (tickArray) {
        self.animationView.animationImages = tickArray;
        self.animationView.animationDuration = 1.05;
        self.animationView.animationRepeatCount = 1;
        [self.animationView startAnimating];

        [self performSelector:@selector(showFinalImage) withObject:nil afterDelay:1.2];
    }

}

- (void)showFinalImage
{
     [self.animationView setImage:[UIImage imageNamed:@"check_37.png"]];
}

ここで、check_1.png から check_37.png までがアニメーション化が必要なファイルです。それらを「tickArray」という配列に格納し、[self loadArrayForTickAnimation] メッセージを使用して配列に入力します。最後に、animationView の UIIMage を check_37.png として設定する必要があります。

4

1 に答える 1

1

修正しました!!! アニメーションを開始する前に、imageview の画像を設定する必要があります。そう、私は持っているだろう

self.animationView.image = [UIImage imageNamed:@"check_37.png"];
if (tickArray) {
    self.animationView.animationImages = tickArray;
    self.animationView.animationDuration = 1.05;
    self.animationView.animationRepeatCount = 1;
    [self.animationView startAnimating];
}

それがついに機能しました!!!

于 2013-05-01T00:00:33.517 に答える