iOS. Приемы программирования
Шрифт:
• numberOfSectionsInTableView: — позволяет источнику данных информировать табличный вид о количестве разделов, которые должны быть загружены в таблицу;
• tableView: numberOfRowsInSection: — сообщает контроллеру вида, сколько ячеек или строк следует загрузить в каждый раздел. Номер раздела передается источнику данных в параметре numberOfRowsInSection. Реализация этого метода является обязательной для объекта источника данных;
• tableView: cellForRowAtIndexPath: — отвечает за возвращение экземпляров класса UITableViewCell как строк таблицы, которыми должен заполняться табличный вид. Реализация этого метода обязательна для объекта источника данных.
Итак, продолжим и реализуем
Далее сообщим табличному виду, сколько строк хотим в нем отобразить для каждого раздела:
Итак, на данный момент мы приказали табличному виду отобразить три раздела. В первом разделе три строки, во втором — пять, в третьем — восемь. Что дальше? Нужно вернуть табличному виду экземпляры UITableViewCell — тех ячеек, которые мы хотим отобразить в таблице:
Теперь,
Рис. 4.2. Обычный табличный вид с тремя разделами
Когда табличный вид перезагружается или обновляется, он запрашивает источник данных через протокол
После того как источник данных укажет количество разделов, табличный вид запросит количество строк, которые должны быть загружены в каждый из разделов. Источник данных получает индекс с нулевой базой для каждого раздела и на базе этого индекса решает, сколько ячеек загрузить в каждый раздел.
Табличный вид, определив количество ячеек в разделах, продолжит запрашивать источник данных о видах — один такой вид соответствует каждой ячейке того или иного раздела. Вы можете выделять экземпляры класса
4.2. Использование дополнительных элементов в ячейке табличного вида
Постановка задачи
Требуется привлечь внимание пользователя, отображая в таблице дополнительные элементы, и предложить альтернативные способы взаимодействия с каждой ячейкой в табличном виде.
Решение
Используйте свойство accessoryType класса UITableViewCell. Экземпляры этого класса вы предоставляете табличному виду в объекте его источника данных:
Загадки истории. Факты. Открытия. Люди
Научно-образовательная:
история
рейтинг книги
Кодекс Охотника. Книга XL
40. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
рейтинг книги
Атлантида
15. Дирк Питт
Детективы:
боевики
рейтинг книги
Управленческая элита. Как мы ее отбираем и готовим
Деловая литература:
управление, подбор персонала
рейтинг книги
12 тем. Маркетинг 21 века
Документальная литература:
публицистика
рейтинг книги
Второгодка. Книга 2. Око за око
2. Второгодка
Фантастика:
героическая фантастика
альтернативная история
фэнтези
рейтинг книги
Когда небо стало пеплом, а земля инеем. Часть 1
1. Иней и пепел
Фантастика:
юмористическое фэнтези
уся
фэнтези
рейтинг книги
Бастард Императора. Том 8
8. Бастард Императора
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Миры Источника. Трилогия
19. В одном томе
Фантастика:
фэнтези
рейтинг книги
Звёздные корабли. Туманность Андромеды (ил. И. Шалито, Г. Бойко)
Мир приключений изд. Правда
Фантастика:
научная фантастика
рейтинг книги
Стихотворения
Поэзия:
поэзия
рейтинг книги
США: История страны
Биографии Великих Стран
Научно-образовательная:
история
рейтинг книги