簡體   English   中英

iOS:圖片幻燈片放映

[英]iOS: Images slide show

這是我的圖像幻燈片放映代碼:

-(void)setImage
{
     imageView.image = [UIImage imageNamed:[arrImages objectAtIndex:0]];
     [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(changeImage) userInfo:nil repeats:YES];
}

-(void)changeImage
{

   imageId = imageId + 1;

   int id = imageId % [arrImages count];
   CATransition * trs = [CATransition animation];
   trs.duration = 0.5;
   [trs setType:kCATransitionPush];
   imageView.image = [UIImage imageNamed:[arrImages objectAtIndex:id]];
   [imageView.layer addAnimation:trs forKey:kCATransition];
}

我在單擊按鈕時調用setImage()方法。

第一次單擊按鈕時效果很好,但是此后每次單擊按鈕時,幻燈片的速度都會提高。

誰能告訴我為什么會這樣。

感謝名單。

首先在全局使用一個計時器。

 NSTimer *timer;

 -(void)setImage
 {
    imageView.image = [UIImage imageNamed:[arrImages objectAtIndex:0]];
    if (timer)
    {
      [timer invalidate];
      timer = nil;
    }

    timer = [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(changeImage) userInfo:nil repeats:YES];
 }

試試這個:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM