Вы можете поместить непрозрачный вид с черным фоном поверх вида, который вы хотите затемнить. Это будет иметь значение альфа по умолчанию 0 и, следовательно, будет прозрачным. Затем вы могли бы использовать анимацию UIView, чтобы установить альфа для черных представлений от 0 до 0,5 (скажем), а затем вернуться.
Примечание: Код ниже не был проверен, но я использовал аналогичный для достижения того же эффекта.
...
dimView.alpha = 0.0f;
[UIView beginAnimations@"fade" context:nil];
[UIView setAnimationDuration:0.5f];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
[UIView setAnimationRepeatAutoreverses:YES];
dimView.alpha = 0.5f;
[UIView commitAnimations];
...
}
- (void) animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context {
dimView.alpha = 0.0f;
}