Вопрос

Я искал способы настроить UICollectionView для приложения для iOS.Google выдает только несколько блогов с постами о что это так, а не как это работает.Тогда, конечно, есть документация Apple, которая полезна, но содержит не так много информации, как мне хотелось бы, чтобы иметь возможность настроить UICollectionView.

Как можно настроить UICollectionView?

Это было полезно?

Решение

То класс почти идентичен классу Класс.Они используют многие из одних и тех же методов и функций.И если методы / функции разные, то в большинстве случаев это просто вопрос замены "строки" на "ячейку" и наоборот.Однако есть несколько методов, которых нет в UICollectionView, которые работают в UITableView.Однако сначала я объясню, как настроить UICollectionView:

  1. Начните с добавления вашего UICollectionView в текущий ViewController или создания нового UICollectionViewController.Шаги не так уж сильно отличаются для представления и контроллера.
  2. Если вы используете View, а не ViewController, убедитесь, что Делегат и Источник данных часть CollectionView - это контроллер представления, на котором он включен.Также не забудьте добавить делегат и источник данных в свой заголовочный файл: <UICollectionViewDataSource, UICollectionViewDelegate>

  3. Затем убедитесь, что вы включили эти три метода в класс вашего контроллера представления:

    -(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
    
    -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
    
    -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    
  4. Это единственные необходимые методы.Первый сообщает представлению коллекции количество разделов, которые оно должно иметь.Это должно возвращать целочисленное значение.Второй метод позволяет получить количество ячеек в каждом разделе.Опять же, это должно возвращать целочисленное значение.Последний метод заполняет каждую ячейку, используя предоставленные данные (обычно из NSArray).Этот последний метод должен возвращать CollectionViewCell.Если вы установите точки останова для этого метода, вы заметите, что он вызывается один раз для каждой ячейки, определенной в numberOfItemsInSection метод.

UICollectionViews предоставляет расширенные методы анимации и позволяет отменять выделение ячеек (аналогично таким приложениям, как Pages, в режиме редактирования).Однако, насколько мне известно, UICollectionViews не предоставляет таких функций, как "проведите пальцем, чтобы удалить" или какой-либо индикатор раскрытия информации.

UICollectionViews также позволяет создавать пользовательские ячейки с помощью (ОН ЖЕ ) файлов, это позволяет создавать некоторые очень продвинутые и уникальные интерфейсы без большого количества сложного кода.

К сожалению, UICollectionView поддерживается только в iOS 6 и выше.Есть несколько доступных проектов, таких как PSTCollectionView который добавляет поддержку CollectionViews в iOS 4.3+, но я так и не понял, как их использовать.В моем случае, когда загружается представление, я просто проверяю, доступен ли класс UICollectionView, и если это не так, то вместо этого я загружаю таблицу.

Вот ссылка на официальную документацию Apple по Просмотры коллекции.Возможно, вы также захотите ознакомиться с этим руководство.

Другие советы

Я создал пошаговый руководство для настройки UICollectionViews с пользовательскими макетами.Надеюсь, это поможет некоторым людям ознакомиться с API.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top