Я создал пользовательский UITableViewCell и установил backgroundView со следующим кодом:
- (void)layoutSubviews
{
[super layoutSubviews];
self.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"NormalImage"]];
self.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"HighlightedImage"]];
// other layout stuff
}
Это прекрасно работает, за исключением того, что когда пользователь выбирает строку, он не выделяется - он подсвечивается только тогда, когда пользователь отрывает свой палец (поэтому вы кратко видите его выделение перед переходом к следующему виду ). Если я уберу строку self.selectedBackgroundView
, чтобы была обычная подсветка синей ячейки iOS, она будет выделена сразу после выбора ячейки.
Почему это?