前言
Timer 在OC應該是NSTimer
在Swift就是簡化成Timer
主要功用在計時使用
固定時間呼叫某func 幾個循環
或是延遲幾妙後開始計時
Timer 與 NSTimer
OC NSTimer 寫法
寫一個每五秒 reload tableview
並且重複
宣告部分
//每5秒循環一次 呼叫reloadTableView 重複呼叫
NSTimer *reloadTimer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(reloadTableView) userInfo:nil repeats:YES];
呼叫func部分
-(void)reloadTableView:(NSTimer *)theTimer{
[tableview reloadData];
}
停止
要停止部分使用invalidate
並且釋放reloadTimer = nil
[reloadTimer invalidate];
reloadTimer = nil;
Swift Timer 寫法
宣告部分
//每5秒循環一次 呼叫reloadTableView 重複呼叫
var timer : Timer?
reloadTimer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(reloadTableView(_:)), userInfo: nil, repeats: true)
呼叫func部分
@objc func timeRepeat(_ time:Timer) -> Void {
tableview.reloadData()
}
停止
timer?.invalidate()
timer = nil
大致上語法差不多
只有宣告好像還有很多宣告法
但我的func它自動幫我轉objc也太奇怪了
下次再來研究為什麼會這樣
Swift更多文章
Swift 彈出視窗 AlertController 的使用方法 💥
Swift UISegmentedControl 💻分段控制器!
pain in duodenum after eating uti treatment guidelines for elderly antibiotic for gram negative uti
purchase phenergan best ed medications ivermectin medication