selector

记录滑动视图时timer停止工作等

2018-05-22  本文已影响0人  小雨的技术问题记录与分享

一、滑动视图timer停止工作

[[NSRunLoopcurrentRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes];

滑动时timer的状态:

NSDefaultRunLoopMode->UITrackingRunLoopMode->NSDefaultRunLoopMode


这边顺便记录一下runloopModel的状态:

1、NSDefaultRunLoopMode

默认状态(空闲状态),比如点击按钮都是这个状态

2、UITrackingRunLoopMode

滑动时的Mode。比如滑动UIScrollView时。

3、UIInitializationRunLoopMode

私有的,APP启动时。就是从iphone桌面点击APP的图标进入APP到第一个界面展示之前,在第一个界面显示出来后,UIInitializationRunLoopMode就被切换成了NSDefaultRunLoopMode。

4、NSRunLoopCommonModes

它是NSDefaultRunLoopMode和UITrackingRunLoopMode的集合。结构类似于一个数组。在这个mode下执行其实就是两个mode都能执行而已。


2、tableView滑动时cell就不会去设置图片

//在cell里面把设置图片的事情在NSDefaultRunloopMode里面去做。

//当主线程的tableview不再滑动的时候就会去设置图片

UIImage*dowloadImage = [UIImage ImageWithName:@"我滴图片嘿"];

[self.iconImageView performSelector:@selector(setImage:) withObject:dowloadImage afterDelay:0inModes:@[NSDefaultRunloopMode]];

上一篇下一篇

猜你喜欢

热点阅读