UITableViewDataSource
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 2.0 и позже.
UITableViewDataSource
протокол принят объектом, добивающимся приложения’ s модель данных для a UITableView
объект. Источник данных предоставляет объекту табличного представления информацию, это должно создать и изменить табличное представление.
Как представитель модели данных, источник данных предоставляет минимальную информацию о появлении табличного представления. Делегат объекта табличного представления — объект, принимающий UITableViewDelegate
протокол — предоставляет ту информацию.
Требуемые методы протокола обеспечивают ячейки, которые будут выведены на экран табличным представлением, а также сообщат UITableView
объект о числе разделов и числе строк в каждом разделе. Источник данных может реализовать дополнительные методы, чтобы сконфигурировать различные аспекты табличного представления и вставить, удалить, и переупорядочить строки.
Много методов берут NSIndexPath
объекты как параметры. UITableView
объявляет категорию на NSIndexPath
это позволяет Вам получить представленный индекс строки (row
свойство) и индекс раздела (section
свойство), и создать индексный путь из данного индекса строки и индекса раздела (indexPathForRow:inSection:
метод класса). (Первый индекс по каждому индексному пути идентифицирует раздел, и следующее идентифицирует строку.)
-
Просит источник данных ячейку вставлять в определенное расположение табличного представления. (требуемый)
Объявление
Swift
func tableView(_
tableView
: UITableView, cellForRowAtIndexPathindexPath
: NSIndexPath) -> UITableViewCellObjective C
- (UITableViewCell *)tableView:(UITableView *)
tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
Параметры
tableView
Объект табличного представления запрос ячейки.
indexPath
Индексный путь, определяющий местоположение строки в
tableView
.Возвращаемое значение
Объект, наследовавшийся от
UITableViewCell
то, что табличное представление может использовать для указанной строки. Если Вы возвращаетесь, утверждение повышеноnil
.Обсуждение
Возвращенный
UITableViewCell
объект часто является тем, который обосновывают повторные использования приложения для производительности. Необходимо выбрать ранее создаваемый объект ячейки, отмеченный для повторного использования путем отправки adequeueReusableCellWithIdentifier:
сообщение кtableView
. Различные атрибуты ячейки таблицы установлены автоматически на основе того, является ли ячейка разделителем, и на информации источник данных обеспечивает, такой что касается вспомогательного представления и редактирующие средства управления.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Просит источник данных возвращать число разделов в табличном представлении.
Объявление
Swift
optional func numberOfSectionsInTableView(_
tableView
: UITableView) -> IntObjective C
- (NSInteger)numberOfSectionsInTableView:(UITableView *)
tableView
Параметры
tableView
Объект, представляющий табличное представление, запрашивающее эту информацию.
Возвращаемое значение
Число разделов в
tableView
. Значение по умолчанию равняется 1.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Говорит источнику данных возвращать число строк в данном разделе табличного представления. (требуемый)
Объявление
Swift
func tableView(_
tableView
: UITableView, numberOfRowsInSectionsection
: Int) -> IntObjective C
- (NSInteger)tableView:(UITableView *)
tableView
numberOfRowsInSection:(NSInteger)section
Параметры
tableView
Объект табличного представления, запрашивающий эту информацию.
section
Индекс, идентифицирующий раздел в
tableView
.Возвращаемое значение
Число строк в
section
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Просит источник данных возвращать заголовки для разделов для табличного представления.
Объявление
Swift
optional func sectionIndexTitlesForTableView(_
tableView
: UITableView) -> [AnyObject]!Objective C
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)
tableView
Параметры
tableView
Объект табличного представления, запрашивающий эту информацию.
Возвращаемое значение
Массив строк, служащих заголовком разделов в табличном представлении и появляющихся в индексном списке на правой стороне табличного представления. Табличное представление должно быть в стандартном стиле (
UITableViewStylePlain
). Например, для расположенного в алфавитном порядке списка, Вы могли возвратить массив, содержащий строки “” через «Z».Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
tableView (_: sectionForSectionIndexTitle:atIndex:) - tableView:sectionForSectionIndexTitle:atIndex:
Просит источник данных возвращать индекс раздела, имеющего данный заголовок и индекс заголовка раздела.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, sectionForSectionIndexTitletitle
: String, atIndexindex
: Int) -> IntObjective C
- (NSInteger)tableView:(UITableView *)
tableView
sectionForSectionIndexTitle:(NSString *)title
atIndex:(NSInteger)index
Параметры
tableView
Объект табличного представления, запрашивающий эту информацию.
title
Заголовок, как выведено на экран в индексе раздела
tableView
.index
Индекс, идентифицирующий заголовок раздела в массиве, возвращенном
sectionIndexTitlesForTableView:
.Возвращаемое значение
Индекс, идентифицирующий раздел.
Обсуждение
Этот метод передается индекс и заголовок записи в индексном списке раздела и должен возвратить индекс раздела, на который ссылаются. Чтобы быть ясными, существует два индекса в игре здесь: индекс к разделу индексирует заголовок в массиве, возвращенном
sectionIndexTitlesForTableView:
, и индекс к разделу табличного представления; прежний передается в, и последний возвращается. Вы реализуете этот метод только для табличных представлений с индексным списком раздела — который может только быть табличными представлениями, создаваемыми в стандартном стиле (UITableViewStylePlain
). Обратите внимание на то, что массив заголовков раздела, возвращенныхsectionIndexTitlesForTableView:
может иметь меньше элементов, чем фактическое число разделов в табличном представлении.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Просит источник данных заголовок заголовка указанного раздела табличного представления.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, titleForHeaderInSectionsection
: Int) -> String?Objective C
- (NSString *)tableView:(UITableView *)
tableView
titleForHeaderInSection:(NSInteger)section
Параметры
tableView
Объект табличного представления выяснение заголовка.
section
Индекс, идентифицирующий раздел
tableView
.Возвращаемое значение
Строка для использования в качестве заголовка заголовка раздела. Если Вы возвращаетесь
nil
, раздел не будет иметь никакого заголовка.Обсуждение
Табличное представление использует стиль фиксированного шрифта для заголовков заголовка раздела. Если Вы хотите различный стиль шрифта, возвратите пользовательское представление (например, a
UILabel
объект) в методе делегатаtableView:viewForHeaderInSection:
вместо этого.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
Просит источник данных заголовок нижнего колонтитула указанного раздела табличного представления.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, titleForFooterInSectionsection
: Int) -> String?Objective C
- (NSString *)tableView:(UITableView *)
tableView
titleForFooterInSection:(NSInteger)section
Параметры
tableView
Объект табличного представления выяснение заголовка.
section
Индекс, идентифицирующий раздел
tableView
.Возвращаемое значение
Строка для использования в качестве заголовка нижнего колонтитула раздела. Если Вы возвращаетесь
nil
, раздел не будет иметь никакого заголовка.Обсуждение
Табличное представление использует стиль фиксированного шрифта для заголовков нижнего колонтитула раздела. Если Вы хотите различный стиль шрифта, возвратите пользовательское представление (например, a
UILabel
объект) в методе делегатаtableView:viewForFooterInSection:
вместо этого.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
tableView (_: commitEditingStyle:forRowAtIndexPath:) - tableView:commitEditingStyle:forRowAtIndexPath:
Просит источник данных фиксировать вставку или удаление указанной строки в получателе.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, commitEditingStyleeditingStyle
: UITableViewCellEditingStyle, forRowAtIndexPathindexPath
: NSIndexPath)Objective C
- (void)tableView:(UITableView *)
tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
Параметры
tableView
Объект табличного представления запрос вставки или удаления.
editingStyle
Ячейка, редактируя стиль, соответствующий вставке или удалению, которое требуют на строку, указанную
indexPath
. Возможные стили редактированияUITableViewCellEditingStyleInsert
илиUITableViewCellEditingStyleDelete
.indexPath
Индексный путь, определяющий местоположение строки в
tableView
.Обсуждение
Когда пользователи касаются вставки (зеленый плюс) управление или кнопка Delete, связанная с a
UITableViewCell
объект в табличном представлении, табличное представление отправляет это сообщение в источник данных, прося, чтобы он фиксировал изменение. (Если пользователь касается удаления (красный минус) управление, табличное представление тогда выводит на экран кнопку Delete для получения подтверждения.) Источник данных фиксирует вставку или удаление путем вызоваUITableView
методыinsertRowsAtIndexPaths:withRowAnimation:
илиdeleteRowsAtIndexPaths:withRowAnimation:
, как надлежащий.Для активации swipe-delete опции табличных представлений (в чем пользователь сильно ударяет горизонтально через строку для отображения кнопки Delete) необходимо реализовать этот метод.
Вы не должны вызывать
setEditing:animated:
в реализации этого метода. Если по некоторым причинам Вы должны, вызвать его после задержки при помощиperformSelector:withObject:afterDelay:
метод.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Просит источник данных проверять, что данная строка доступна для редактирования.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, canEditRowAtIndexPathindexPath
: NSIndexPath) -> BoolObjective C
- (BOOL)tableView:(UITableView *)
tableView
canEditRowAtIndexPath:(NSIndexPath *)indexPath
Параметры
tableView
Объект табличного представления, запрашивающий эту информацию.
indexPath
Индексный путь, определяющий местоположение строки в
tableView
.Возвращаемое значение
YES
true
если строка, обозначеннаяindexPath
доступно для редактирования; иначе,NO
false
.Обсуждение
Метод разрешает источнику данных исключать отдельные строки из того, чтобы быть обработанным как доступные для редактирования. Доступные для редактирования строки выводят на экран вставку или управление удалением в их ячейках. Если этот метод не реализован, все строки, как предполагается, доступны для редактирования. Строки, которые не доступны для редактирования, игнорируют
editingStyle
свойство aUITableViewCell
возразите и не сделайте никакого добавления отступа для управления вставкой или удаления. Строки, которые доступны для редактирования, но не хотящие иметь вставку или удалять показанное управление, могут возвратитьсяUITableViewCellEditingStyleNone
отtableView:editingStyleForRowAtIndexPath:
метод делегата.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Спрашивает источник данных, может ли данная строка быть перемещена в другое расположение в табличном представлении.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, canMoveRowAtIndexPathindexPath
: NSIndexPath) -> BoolObjective C
- (BOOL)tableView:(UITableView *)
tableView
canMoveRowAtIndexPath:(NSIndexPath *)indexPath
Параметры
tableView
Объект табличного представления, запрашивающий эту информацию.
indexPath
Индексный путь, определяющий местоположение строки в
tableView
.Возвращаемое значение
YES
true
если может быть перемещена строка; иначеNO
false
.Обсуждение
Этот метод позволяет источнику данных указывать, что переупорядочение управляет для указанной строки не быть показанным. По умолчанию, если источник данных реализует, управление переупорядочением показано
tableView:moveRowAtIndexPath:toIndexPath:
метод.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Говорит источнику данных перемещать строку в определенное расположение в табличном представлении к другому расположению.
Объявление
Swift
optional func tableView(_
tableView
: UITableView, moveRowAtIndexPathfromIndexPath
: NSIndexPath, toIndexPathtoIndexPath
: NSIndexPath)Objective C
- (void)tableView:(UITableView *)
tableView
moveRowAtIndexPath:(NSIndexPath *)fromIndexPath
toIndexPath:(NSIndexPath *)toIndexPath
Параметры
tableView
Объект табличного представления запрос этого действия.
fromIndexPath
Индексный путь, определяющий местоположение строки, которая будет перемещена в
tableView
.toIndexPath
Индексный путь, определяющий местоположение строки в
tableView
это - место назначения перемещения.Обсуждение
UITableView
когда пользователь нажимает управление переупорядочиванием в, объект отправляет это сообщение в источник данныхfromRow
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.