如果在iOS中重复是,则计时器不会停止?

时间:2016-03-02 05:59:04

标签: ios objective-c nstimer

我在我的应用中添加了 nstimer 。我已将其重复属性设置为。我在点击按钮时尝试停止计时器但是在这种情况下,计时器不会停止。

 image_timer_one=  [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(ImageTimer:)userInfo:nil repeats:YES];

停止计时器的代码

 [image_timer_one invalidate];
 image_timer_one=nil;

但是计时器不会停止。请告诉我如何停止计时器。

修改 我试图给出光标动画效果,所以当我在这里重复计时器时,我正在设置一个新图像。

-(void)ImageTimer:(NSTimer*)timer{

    if(mode_count==0)
    {
        if(img_time==0)
        {
            [self.pass_image_1 setImage:[UIImage imageNamed:@"blink_2.png"]];
            img_time=1;
        }
        else if(img_time==1)
        {
            [self.pass_image_1 setImage:[UIImage imageNamed:@"blink_1.png"]];
            img_time=0;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

尝试此操作并在启动计时器之前停止上一次计时器操作并调用ImageTimer方法。

  if (image_timer_one != nil && [image_timer_one isValid]) {

        [image_timer_one invalidate];
        image_timer_one = nil;

    }