iOS开发 ☞ NSTimer
来源:互联网 发布:淘宝的促销大师怎么用 编辑:程序博客网 时间:2024/05/17 02:17
示例代码如下:
#import "ViewController.h"@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>@property (nonatomic, strong) UITableView *tableView;@property (nonatomic, strong) UILabel *label;@property (nonatomic, assign) NSTimeInterval timeCount;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; _timeCount = 0; _tableView = [[UITableView alloc] initWithFrame:[UIScreen mainScreen].bounds style:UITableViewStylePlain]; _tableView.delegate = self; _tableView.dataSource = self; [self.view addSubview:_tableView]; NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerFunction) userInfo:nil repeats:YES]; _label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 40)]; _label.backgroundColor = [UIColor orangeColor]; [self.view addSubview:_label];}- (void)timerFunction { _label.text = [NSString stringWithFormat:@"%f",_timeCount ++];}- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 100;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *cellID = @"cellID"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID]; if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID]; } cell.textLabel.text = [NSString stringWithFormat:@"%zd",indexPath.row]; return cell;}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end
当拖拽scrollView的时候,定时器会暂停,原因如下:
在主线程中,UITrackingRunLoopMode是优先级最高的模式,默认定时器的模式为NSDefaultRunLoopMode,在拖拽scrollView的时候,不会立即执行默认模式接收的事件。如果希望定时器持续计时,修改如下:
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerFunction) userInfo:nil repeats:YES]; [[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
0 0
- iOS开发 ☞ NSTimer
- iOS开发-NSTimer
- IOS开发—NSTimer
- iOS开发之NSTimer
- iOS开发基础 - NSTimer
- IOS开发NSTimer动画
- IOS开发 NSTimer的用法
- iOS开发 NSTimer 后台运行
- iOS开发CADisplayLink和NSTimer
- iOS开发NSTimer闪烁问题
- iOS开发笔记--iOS 计时器 NSTimer
- iOS开发16-iOS NSTimer的使用
- 用NSTimer实现倒计时--ios开发
- IOS开发之关于NSTimer使用
- IOS开发——NSRunloop与NSTimer
- IOS开发——NSTimer定时器
- iOS开发 使用NSTimer做循环动画
- 用NSTimer实现倒计时--ios开发
- 数据挖掘实战之 K-means算法
- 正则表达式学习笔记
- 分页查询就是这样
- validate 属性
- Extjs4.2页面显示错误 closeAction
- iOS开发 ☞ NSTimer
- 稍微深入点理解C++复制控制
- http协议3---GET方式和POST方式获取表单数据举例2(统一方式获取)
- Spring Boot使用thymeleaf模板
- HDU1253 胜利大逃亡(三维广搜BFS+剪枝+优先队列)
- 学习之http缓存策略
- spring 自动扫包代码放置的位置问题
- java代理机制简单实现
- Linux中sudo命令使用方法