Изменить сгруппированный цвет текста нижнего колонтитула UITableView - PullRequest
0 голосов
/ 03 мая 2018

Как изменить цвет текста встроенного textLabel из UITablewViewHeaderFooterView? Я пытался

override func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
    guard let footer = tableView.dequeueReusableHeaderFooterView(withIdentifier: footerId) else {
        return nil
    }
    footer.textLabel?.textColor = UIColor.blue
    return footer
}

но ничего не происходит. Моя таблица имеет стиль .grouped, если это имеет значение

1 Ответ

0 голосов
/ 04 мая 2018

Для этого вам придется переопределить tableView:willDisplayFooter:forSection. Где-то между tableView:viewForFooterInSection: и последним UIKit сбрасывает textColor. Установка в willDisplayFooter гарантирует, что вы измените его последним и, следовательно, выиграете :).

Обновление

Если вы зарегистрируете пользовательский подкласс UITableViewHeaderFooterView для ваших представлений нижнего колонтитула, вы также можете переопределить willMove(toWindow:) в этом классе и выполнить ваши изменения там.

Другая альтернатива - установить свойство attributedText textLabel. UIKit не будет связываться с цветом в этом.

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