UITableViewCell Selectioncolor скрывает все - PullRequest
2 голосов
/ 23 июля 2011

Когда я выбираю изготовленную на заказ ячейку, она скрывает все в ячейке и показывает только выбранный цвет.

enter image description here

как я могу немного затемнить фон при выборе?

Ответы [ 3 ]

2 голосов
/ 23 июля 2011

В дополнение к переопределению setHighlighted:, вы можете использовать макет представления ячейки табличного представления в своих интересах.

Когда iOS применяет выделение, она фактически использует свойство selectedBackgroundView каждого представления таблицыклетка.Таким образом, вы можете создать пользовательский интерфейс UIView (однако стилизовать его, например, присвоив ему желаемый цвет фона) и установить его как свойство selectedBackgroundView (cell.selectedBackgroundView) ячейки табличного представления.Сделайте это в cellForRowAtIndexPath:, настраивая другие детали своей ячейки.

Это будет означать, что вы сами контролируете выбор;градиент по умолчанию для iOS не будет применяться.


Также возможно изменить selectedBackgroundView через Interface Builder.В том же самом наконечнике, что и в пользовательской ячейке, создайте в нем другое представление, а не подпредставление в ячейке настраиваемого табличного представления, и подключите его к выходу `selectedBackgroundView 'ячейки настраиваемого табличного представления.

2 голосов
/ 16 декабря 2012

Вы можете просто добавить выделенный цвет текста при выборе ячейки.

cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"part2.png"]];


cell.textLabel.highlightedTextColor = [UIColor blackColor];

Установить выбранный цвет текста в соответствии с выделенным цветом выделения ячеек.

2 голосов
/ 23 июля 2011

Если это пользовательская ячейка, внедрите

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated

И отрегулируйте цвет фона внутри него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...