[問題] NSTimer
承上一問
我使用NSTimer能讓它動了
(跳下一個frame是使用glFlush()而不是[[self openGLContext] flushBuffer])
這是我用的語法:
@implementation GLview
- (void) handleTimer: (NSTimer *) timer
{
rtri+=1;
[self setNeedsDisplay:YES];
}
- (void)drawRect:(NSRect)rect
{
...
glRotatef(rtri,1,0,0);
//在這裡畫圖
glFlush();
timer = [NSTimer scheduledTimerWithTimeInterval: 0.000001
target: self
selector: @selector(handleTimer:)
userInfo: nil
repeats: YES];
}
不過有一個奇怪的問題
就是它會愈轉愈慢,最後整個程式當掉...囧
官網上是用IBAction的方式來start timer 用法如下
- (IBAction)startOneOffTimer:sender {
[NSTimer scheduledTimerWithTimeInterval:2.0
target:self
selector:@selector(targetMethod:)
userInfo:[self userInfo]
repeats:NO];
}
是要在什麼地方release timer嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.96.223
→
12/20 22:11, , 1F
12/20 22:11, 1F
推
12/20 22:39, , 2F
12/20 22:39, 2F
→
12/20 22:39, , 3F
12/20 22:39, 3F
推
12/20 22:48, , 4F
12/20 22:48, 4F
→
12/20 22:48, , 5F
12/20 22:48, 5F
→
12/21 00:19, , 6F
12/21 00:19, 6F
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章