Если вы определяете метод в своем классе, что-то вроде этого:
- (void)removeImageFromButton:(id)button {
[button setImage:nil forState:UIControlStateNormal]
}
Тогда вы можете делать то, что вы хотите сделать следующим образом:
[button setImage:[UIImage imageNamed:@"light.png"] forState:UIControlStateNormal];
[self performSelector:@selector(removeImageFromButton:) withObject:button afterDelay:5.0];
Также вы, вероятно,хотите добавить [NSObject cancelPreviousPerformSelectorRequestsWithTarget:self];
в - (void)dealloc
, иначе вы получите EXC_BAD_ACCESS
, если self
освобожден до истечения 5 с.