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 *)
collectionView
numberOfItemsInSection:(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 *)
collectionView
cellForItemAtIndexPath:(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 *)
collectionView
viewForSupplementaryElementOfKind:(NSString *)kind
atIndexPath:(NSIndexPath *)indexPath
Параметры
collectionView
Объект, представляющий представление набора, запрашивающее эту информацию.
kind
Вид дополнительного представления для обеспечения. Значение этой строки определяется объектом расположения, поддерживающим дополнительное представление.
indexPath
Индексный путь, указывающий расположение нового дополнительного представления.
Возвращаемое значение
Сконфигурированный дополнительный объект представления. Вы не должны возвращаться
nil
от этого метода.Обсуждение
Ваша реализация этого метода ответственна за создание, конфигурирование и возврат надлежащего дополнительного представления, которое требуют. Вы делаете это путем вызова
dequeueReusableSupplementaryViewOfKind:withReuseIdentifier:forIndexPath:
метод представления набора и передачи информации, соответствующей представлению, которое Вы хотите. Тот метод всегда возвращает допустимый объект представления. После получения представления необходимо установить любые свойства, соответствующие данным, Вы хотите вывести на экран, выполнить любую дополнительную необходимую конфигурацию и возвратить представление.Вы не должны устанавливать расположение дополнительного представления в границах представления набора. Представление набора устанавливает расположение каждого представления с помощью атрибутов макета, предоставленных его объектом расположения.
Этот метод должен всегда возвращать допустимый объект представления. Если Вы не хотите дополнительное представление в особом случае, Ваш объект расположения не должен создавать атрибуты для того представления. Также можно скрыть представления путем установки
hidden
свойство соответствующих атрибутов кYES
true
или наборalpha
свойство атрибутов к 0. Скрыть заголовок и нижний колонтитул просматривает в перетекающем макете, можно также установить ширину и высоту тех представлений к 0.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.