UICollectionViewDataSource
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 6.0 и позже.
Объект, принимающий UICollectionViewDataSource протокол ответственен за предоставление данных и просматривает требуемый представлением набора. Объект источника данных представляет модель данных Вашего приложения и продает информацию к представлению набора по мере необходимости. Это также обрабатывает создание и конфигурацию ячеек и дополнительных представлений, используемых представлением набора для отображения данных.
Как минимум все объекты источника данных должны реализовать collectionView:numberOfItemsInSection: и collectionView:cellForItemAtIndexPath: методы. Эти методы ответственны за возврат числа элементов в представлении набора вместе с самими элементами. Если Ваше представление набора организует элементы в многократные разделы или обеспечивает заголовки и нижние колонтитулы для данного раздела, остающиеся методы протокола являются дополнительными и только необходимыми.
При конфигурировании объекта представления набора присвойте источник данных dataSource свойство. Для получения дополнительной информации о том, как представление набора работает со своим источником данных для представления содержания, посмотрите Ссылку класса UICollectionView.
-
Просит источник данных число элементов в указанном разделе. (требуемый)
Объявление
Swift
func collectionView(_collectionView: UICollectionView, numberOfItemsInSectionsection: Int) -> IntObjective C
- (NSInteger)collectionView:(UICollectionView *)collectionViewnumberOfItemsInSection:(NSInteger)sectionПараметры
collectionViewОбъект, представляющий представление набора, запрашивающее эту информацию.
sectionИндекс, идентифицирующий раздел в
collectionView. Это индексное значение на основе 0.Возвращаемое значение
Число строк в
section.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Просит источник данных число разделов в представлении набора.
Объявление
Swift
optional func numberOfSectionsInCollectionView(_collectionView: UICollectionView) -> IntObjective C
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionViewПараметры
collectionViewОбъект, представляющий представление набора, запрашивающее эту информацию.
Возвращаемое значение
Число разделов в
collectionView.Обсуждение
Если Вы не реализуете этот метод, представление набора использует значение по умолчанию 1.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Просит источник данных ячейку, соответствующую указанному элементу в представлении набора. (требуемый)
Объявление
Swift
func collectionView(_collectionView: UICollectionView, cellForItemAtIndexPathindexPath: NSIndexPath) -> UICollectionViewCellObjective C
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionViewcellForItemAtIndexPath:(NSIndexPath *)indexPathПараметры
collectionViewОбъект, представляющий представление набора, запрашивающее эту информацию.
indexPathИндексный путь, указывающий расположение элемента.
Возвращаемое значение
Сконфигурированный объект ячейки. Вы не должны возвращаться
nilот этого метода.Обсуждение
Ваша реализация этого метода ответственна за создание, конфигурирование и возврат надлежащей ячейки для данного элемента. Вы делаете это путем вызова
dequeueReusableCellWithReuseIdentifier:forIndexPath:метод представления набора и передачи идентификатора повторного использования, соответствующего типу ячейки, который Вы хотите. Тот метод всегда возвращает допустимый объект ячейки. После получения ячейки необходимо установить любые свойства, соответствующие данным соответствующего элемента, выполняющие любую дополнительную необходимую конфигурацию и возвращающие ячейку.Вы не должны устанавливать расположение ячейки в границах представления набора. Представление набора устанавливает расположение каждой ячейки автоматически с помощью атрибутов макета, предоставленных ее объектом расположения.
Этот метод должен всегда возвращать допустимый объект представления.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
collectionView (_: viewForSupplementaryElementOfKind:atIndexPath:) - collectionView:viewForSupplementaryElementOfKind:atIndexPath:Просит представление набора обеспечивать дополнительное представление для отображения в представлении набора.
Объявление
Swift
optional func collectionView(_collectionView: UICollectionView, viewForSupplementaryElementOfKindkind: String, atIndexPathindexPath: NSIndexPath) -> UICollectionReusableViewObjective C
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionViewviewForSupplementaryElementOfKind:(NSString *)kindatIndexPath:(NSIndexPath *)indexPathПараметры
collectionViewОбъект, представляющий представление набора, запрашивающее эту информацию.
kindВид дополнительного представления для обеспечения. Значение этой строки определяется объектом расположения, поддерживающим дополнительное представление.
indexPathИндексный путь, указывающий расположение нового дополнительного представления.
Возвращаемое значение
Сконфигурированный дополнительный объект представления. Вы не должны возвращаться
nilот этого метода.Обсуждение
Ваша реализация этого метода ответственна за создание, конфигурирование и возврат надлежащего дополнительного представления, которое требуют. Вы делаете это путем вызова
dequeueReusableSupplementaryViewOfKind:withReuseIdentifier:forIndexPath:метод представления набора и передачи информации, соответствующей представлению, которое Вы хотите. Тот метод всегда возвращает допустимый объект представления. После получения представления необходимо установить любые свойства, соответствующие данным, Вы хотите вывести на экран, выполнить любую дополнительную необходимую конфигурацию и возвратить представление.Вы не должны устанавливать расположение дополнительного представления в границах представления набора. Представление набора устанавливает расположение каждого представления с помощью атрибутов макета, предоставленных его объектом расположения.
Этот метод должен всегда возвращать допустимый объект представления. Если Вы не хотите дополнительное представление в особом случае, Ваш объект расположения не должен создавать атрибуты для того представления. Также можно скрыть представления путем установки
hiddenсвойство соответствующих атрибутов кYEStrueили наборalphaсвойство атрибутов к 0. Скрыть заголовок и нижний колонтитул просматривает в перетекающем макете, можно также установить ширину и высоту тех представлений к 0.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
