setHighlighted не является анимируемым свойством просмотра. Кроме того, вы говорите две противоположные вещи: вы выделили выделенное значение ДА и НЕТ на одном дыхании. В результате ничего не произойдет, потому что нет общих изменений.
Используйте обработчик завершения или отложенное исполнение, чтобы изменить выделение позже .
EDIT:
Вы говорите "пробовал оба, но ни один не работал". Возможно, вам нужно уточнить, что я имею в виду под задержкой исполнения. Я только что попробовал это, и он отлично работает:
- (void) tapped: (UIGestureRecognizer*) g {
label.highlighted = YES;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, 0.2 * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
label.highlighted = NO;
});
}
Метка должна иметь другой textColor
по сравнению с highlightedTextColor
, чтобы что-то видимое происходило.