Подтвердить что ты не робот

Настройка цвета шрифта/фона строки индекса/раздела в UITableView

Я прочитал в другом потоке SO, что вы можете настроить шрифт или фоновый цвет строки индекса (это полоса прокрутки A-Z #) в UITableView, добавляя CALayer. Мое приложение будет работать на iOS 5 и выше, и, поскольку я ничего не видел об этом в документах Apple, было бы правильным сказать, что это просто невозможно без создания пользовательского вида таблицы?

Если это возможно (и приемлемо для Apple), как бы я это сделал?

4b9b3361

Ответ 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