Настройка цвета шрифта/фона строки индекса/раздела в UITableView
Я прочитал в другом потоке SO, что вы можете настроить шрифт или фоновый цвет строки индекса (это полоса прокрутки A-Z #) в UITableView, добавляя CALayer. Мое приложение будет работать на iOS 5 и выше, и, поскольку я ничего не видел об этом в документах Apple, было бы правильным сказать, что это просто невозможно без создания пользовательского вида таблицы?
Если это возможно (и приемлемо для Apple), как бы я это сделал?
Ответы
Ответ 1
Начиная с iOS 6.0 существуют два метода, которые позволяют изменять цвет индексов раздела и фона, отображаемого при перетаскивании по разделам.
if ([tableView respondsToSelector:@selector(setSectionIndexColor:)]) {
tableView.sectionIndexColor = ... // some color
tableView.sectionIndexTrackingBackgroundColor = ... // some other color
}
Конечно, это будет выполняться только в том случае, если устройство имеет 6.0 или новее. В iOS 5.x ничего не изменится.
Ответ 2
Вот код для быстрого 2 +
self.tableView.sectionIndexTrackingBackgroundColor = CustomColor
// background color while the index view is being touched
self.tableView.sectionIndexBackgroundColor = CustomColor
// title/text color of index items
self.tableView.sectionIndexColor = CustomColor
Ответ 3
Для Swift 3.1:
self.tblViewForContacts.sectionIndexTrackingBackgroundColor = self.view.backgroundColor
self.tblViewForContacts.sectionIndexBackgroundColor = self.view.backgroundColor