У меня проблема с обновлением текста по таймеру. Я показываю текущее время и обновляю экран каждую секунду. У меня проблема в том, что старое время не стирается, когда печатается новое время.
Вот функция, которая отображает текущее время.
- (void)drawRect:(CGRect)rect {
CGPoint location = CGPointMake(10,20);
UIFont *font = [UIFont systemFontOfSize:24.0];
[[UIColor whiteColor] set];
NSString *s = [NSString stringWithFormat:@"%@", [NSDate date]];
[s drawAtPoint:location withFont:font];
}
Вот таймер, который обновляет текущее время каждую секунду:
- (IBAction)startRepeatingTimer {
NSRunLoop *runloop = [NSRunLoop currentRunLoop];
NSTimer *timer = [NSTimer timerWithTimeInterval:1 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];
[runloop addTimer:timer forMode:NSDefaultRunLoopMode];
}
- (void)timerFireMethod:(NSTimer*)theTimer {
[self setNeedsDisplay];
}
Как стереть старый текст или очистить весь экран?