iOS引导页不滑动N秒自动跳转的实现

说起来 比较变态===不知道为什么会有这么个需求

这里主要用到两个方法,一个是开始拖拽的时候调用,一个是停止拖拽的时候调用 实现代码如下:

1.

/*开始拖拽的时候调用*/

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{

    [self.timer invalidate];

//    /*暂停*/

//    [self.timer setFireDate:[NSDate distantFuture]];

    self.timer = nil;

}

这里说明一下,一旦开始拖拽 就将定时器销毁掉 因为如果采用暂停定时器的话  效果并不是我们想要的
2.

/*停止拖动的时候调用*/

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{

//    [self addTimer];

    /*开启*/

    [self.timer setFireDate:[NSDate distantPast]];

    [self addTimer];

}

停止拖动的时候调用 开启定时器

/*开启定时器*/

- (void)addTimer{

    self.timer = [NSTimer scheduledTimerWithTimeInterval:10 target:self selector:@selector(jump) userInfo:nil repeats:YES];

}

- (void)jump{

    JumpToMainWindow();

}


另外 在引导页view将要出现和将要消失的时候 需要实现以下代码

- (void)viewWillDisappear:(BOOL)animated{

    [self.timer invalidate];

}

- (void)viewDidAppear:(BOOL)animated{

    [self.timer setFireDate:[NSDate distantPast]];

    [self addTimer];

}



你可能感兴趣的:(iOS)