Цвет фона UITableViewCell отличается от левого и правого краев ячейки.

Я устанавливаю цвет фона ячейки в tableview:willDisplayCell и получаю нужный цвет. Однако левый и правый края ячейки имеют разный оттенок, и я не знаю, почему. У кого-нибудь есть идеи, почему оттенок цвета фона будет другим на краях ячейки? Спасибо

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    cell.backgroundColor = [UIColor colorWithRed:.9333333 green:.46666667 blue:.43137225 alpha:0.5];

}

person mike    schedule 06.08.2013    source источник
comment
Вы также установили цвет фона таблицы? Если вы этого не сделаете, это может привести к странным цветовым парам, потому что таблица одного цвета, а ячейки другого цвета.   -  person heinst    schedule 07.08.2013
comment
Есть ли в вашем UITableViewCell подвиды слева и справа? Просмотры, ярлыки и т.д.?   -  person hgwhittle    schedule 07.08.2013
comment
Сначала я этого не делал, но я просто сделал, и не повезло. Я пошел дальше и попытался установить для tableview, tableviewcell и представления содержимого ячейки один и тот же цвет фона, но у меня все еще есть две вертикальные полосы разного оттенка, идущие вдоль стороны моего tableview. Спасибо за совет   -  person mike    schedule 07.08.2013
comment
hw731 хороший звонок. Я не думал о подпредставлениях, потому что думал, что установка цвета фона ячейки заполнит всю ячейку. Но здесь виновником является представление textLabel (которое является подпредставлением UITableViewCell по умолчанию). Когда я установил цвет фона в соответствии с моей ячейкой, полосы исчезли. Я все еще немного озадачен тем, почему, но это сработало. Сделайте свой комментарий ответом, и я приму его   -  person mike    schedule 07.08.2013


Ответы (1)


После небольшого эксперимента и предложения hw731 посмотреть на мои подвиды, я понял, почему я испытываю это. В коде, которым я поделился, вы заметите, что я установил альфу на 0,5, потому что изначально это представление должно было быть немного прозрачным. Это позволило цвету фона textLabel ячейки немного просвечиваться по бокам, делая его оттенок другим, чем остальная часть ячейки. Я нашел две вещи, которые могли это исправить. Я мог бы сохранить прозрачность цвета фона ячейки на уровне 0,5, но для этого мне также пришлось установить для cell.textLabel.backgroundColor желаемый цвет. В итоге я просто вернулся к альфе 1.0, поэтому мне не пришлось об этом беспокоиться. Так что мне кажется, что проблема была просто в том, что подвиды просвечивают, так как я установил альфу ниже 1,0. Я уверен, что кто-то мог бы объяснить это лучше меня, и если да, не стесняйтесь. Надеюсь, это поможет кому-то еще!

person mike    schedule 06.08.2013