2012-04-29 13 views
1

私の意見の1つにUIImageviewがあります。 10秒ごとに画像を変更したいのですが、どうすればいいのか分かりません。UIImageViewを10秒ごとに変更しようとしています

提案がありますか?

+0

使用NSTimerをかなりシンプルなこの

[imageView stopAnimating]; 

を行い、10秒の時間を提供してアニメーションを停止すると、それに応じて画像を変更してください... – Sabby

+0

http://stackoverflow.com/questions/17750827/changing-ouimage-with-nstimer –

答えて

4

タイマーを使用する必要があります。

NSTimer *timer = [NSTimer timerWithTimeInterval:10 target:self selector:@selector(changeImage) userInfo:nil repeats:true]; 

や画像の変更方法を実装:あなたのImageViewのか、あなたがImageViewのをサブクラス化することができます含むのViewControllerにこのタイマーを入れて、存在する場合に特に便利(それがその画像自体を管理させることができ

- (void) changeImage { 
    imageView.image = newImage; 
} 

をその画像

13

を変更する必要が複数の独立したImageViewのは、最初の画像の配列を作成します。

NSArray *images = [NSArray arrayWithObjects:[UIimage imagenamed:@"image1.png"],[UIimage imagenamed:@"image2.png"],[UIimage imagenamed:@"image3.png"],[UIimage imagenamed:@"image4.png"]]]; 

その後、アニメーションのためのUIImageViewsに配列 "animationImages" プロパティ

imageView.animationImages = images; 

設定時間を設定します。

imageView.animationDuration = 10; 

スタートアニメーション..

[imageView startAnimating]; 

ちょうどその..

+0

正解のために+1 - そのような仕事のために車輪を再発明する必要はありません。 – Till

+1

画像が大きい場合、これはメモリの問題を引き起こす可能性がありますが、これは実際には小さな画像に最適です – Lope

関連する問題