Вы не можете, потому что нет возвращаемого значения.
Процитируйте документация метода scheduledTimerWithTimeInterval:::::
:
Селектор должен иметь следующую подпись:
- (void)timerFireMethod:(NSTimer*)theTimer
Теперь вы можете объявить свой метод по-другому, а затем вернуть в нем значение, но тогда ваш метод будет иметь другую сигнатуру, чем ожидает NSTimer. Это будет нормально работать сейчас, но не гарантируется, что оно будет работать в будущем — оно может сломаться в любое время, особенно при изменении среды выполнения.
Более того, поскольку NSTimer не ожидает возвращаемого значения, у него нет условий для его получения и передачи куда-либо.
Более того, как я сказал в своем комментарии к ответу Адама, ваш вызов scheduledTimerWithTimeInterval:::::
возвращается только один раз, и (как сказал Адам) он делает это немедленно. Вы не получаете одно возвращаемое значение каждые 0,5 секунды, потому что вы не получаете одно возвращаемое значение каждые 0,5 секунды — вы получаете только одно возвращаемое значение (за таймер).
Какую бы информацию вы ни обнаружили в своем методе таймера, вам нужно либо воздействовать на нее там, либо отправить оттуда сообщение с информацией другому методу.
person
Peter Hosey
schedule
01.03.2009