Я написал небольшое пользовательское приложение с использованием какао. А потом (да, я знаю, что это плохо) я просто спросил себя: Будет ли это работать и для прикосновения к какао? Конечно, не сразу получилось, пришлось менять названия классов и так далее. Ну, я обновил View, когда это было необходимо, используя метод NSTimer
и setNeedsDisplay:
. Работал довольно хорошо под какао, но абсолютно не под какао.
Я не могу объяснить себе, что на самом деле я не знаю, какие строки кода могли бы помочь кому-то решить проблему. Может быть, вот таймер:
[self setMyTimer: [NSTimer scheduledTimerWithTimeInterval:0.03 target:self selector:@selector(myTarget:) userInfo:nil repeats:YES]];
И его цель:
- (void) myTarget:(NSTimer *)timer {
[self setNeedsDisplay];
}
Таймер вызывается каждые 30 мс, я проверил это с помощью NSLog.
В методе drawRect:
я на самом деле просто нарисовал несколько фигур и больше ничего не делал. На всякий случай пришлось бы вызывать какой-то метод clearRect:
. Как я уже говорил, под какао это сработало.