Настройте цвет ячейки таблицы, когда пользователь возвращается к ней - PullRequest
0 голосов
/ 13 февраля 2012

У меня есть легкий для вас.Я пытаюсь сохранить поведение по умолчанию, когда пользователь возвращается из представления после выбора ячейки просмотра таблицы.Обычно ячейка на мгновение остается синей, чтобы показать пользователю, где была выбранная строка, но я забываю, как это настроить.Допустим, для упрощения все мои ячейки по умолчанию имеют зеленый цвет и становятся красными при их выборе.

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
    if (selected) {
        self.backgroundColor = [UIColor redColor];
    } else {
        self.backgroundColor = [UIColor greenColor];
    }
}

Когда пользователь выбирает кнопку «Назад», ячейка не отображает пользователю его последнюю выбранную ячейку, краснаяв этом случае.Я помню, что была переменная, которую я мог бы использовать для настройки этого в контроллере, но я не могу вспомнить, что это было.Может ли кто-нибудь указать мне правильное направление?

Спасибо!

Ответы [ 3 ]

1 голос
/ 13 февраля 2012

Если вы хотите изменить только цвет фона ячейки, вы можете создать новый вид, установить его цвет фона и назначить его для ячеек выбранного фона.

UIView *cellSelectedBackgroundView = [[UIView alloc] init];
[cellSelectedBackgroundView setBackgroundColor:[UIColor someColor]];
[cell setSelectedBackgroundView:cellSelectedBackgroundCView];
0 голосов
/ 13 февраля 2012

Имущество и метод, который я искал, были:

self.clearsSelectionOnViewWillAppear = YES;
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];

Спасибо всем, кто ответил.

0 голосов
/ 13 февраля 2012
UIView *bgColorView = [[UIView alloc] init];
[bgColorView setBackgroundColor:[UIColor redColor]];
[cell setSelectedBackgroundView:bgColorView];
[bgColorView release];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...