Я не могу запустить мой (или любой) объект NSTimer.Я перепробовал все виды итераций, включая использование запланированного и незапланированного таймера и использование методов with Target и selector и NSInvocation.Моя последняя попытка кода здесь:
Timer *myTimerController = [Timer alloc];
NSMethodSignature *mysignature = [Timer instanceMethodSignatureForSelector:@selector(targetMethod)];
NSInvocation *myInvocation = [NSInvocation invocationWithMethodSignature:(mysignature)];
[myInvocation setTarget:myTimerController];
[myInvocation setSelector:@selector(targetMethod)];
[myInvocation invoke];
NSTimer *myTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 invocation:myInvocation repeats:NO];
NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
[runLoop addTimer:myTimer forMode:NSDefaultRunLoopMode];
Я знаю, что метод вызова работает, потому что [myInvocation invoke] дает мне сообщение NSLog: сообщение получено (что на данном этапе это все, что есть в моем targetMethod).То же самое, когда я использовал целевой селектор вместо NSInvocation.Отладчик также показывает, что все мои объекты были созданы.