Самый простой способ отложить действие - это использовать executeSelector NSObject: withObject: afterDelay:
- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay
Установите текст в первый раз (или во время инициализации), а затем сделайте что-то вроде:
[self performSelector:@selector(changeText) withObject:nil afterDelay:10.0];
Вы можете отменить запрос с помощью:
+ (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget selector:(SEL)aSelector object:(id)anArgument
, что вам нужно будет сделать, если вы хотите, чтобы ваш объект был освобожден, так как executeSelector сохраняет как ваш объект, так и параметр withObject.