Swift 3: UICollectionView

Swift 3: UICollectionView

тот без раскадровки

Создание UICollectionView без раскадровки считается одной из лучших практик разработчиков. Мне нравится создавать UICollectionView программно, так как их проще создавать и при этом возникает очень мало ошибок. UICollectionView — это класс с широкими возможностями настройки для представления вашего контента практически в любом макете, который вы хотите. Вы можете создавать собственные макеты, поскольку это класс с широкими возможностями настройки для представления вашего контента практически в любом макете, который вы хотите.

С чего начать?

Создайте новый проект Xcode и соберите приложение, вы получите белый экран на симуляторе, что является хорошим началом. В настоящее время это приложение работает с раскадровкой, поэтому первым делом нужно удалить раскадровку из приложения. Если вы запустите приложение сейчас, оно должно вылететь из строя, но не беспокойтесь, так как ваше приложение не использует раскадровку и делает все в коде, также очень просто.

Полученная ошибка говорит о том, что вам не хватает раскадровки с именем main. Давайте исправим это, перейдя в общий раздел приложения и удалив ключевое слово main из основного интерфейса. Если вы снова запустите приложение, вы увидите черный экран, но приложение не выйдет из строя, так что это хорошо.

Поскольку у нас больше нет раскадровки, нам нужно создать окно вручную с помощью кода. В файле AppDelegate внутри метода didFinishLauncingOptions мы задаем свойства окну, задавая фрейм и делая окно видимым. Теперь, если вы запустите приложение, у вас будет еще один сбой, в котором говорится, что у вас нет rootViewController, поэтому мы назначаем корневой контроллер представления. Это также последний шаг строки если вам нужно создать приложение без раскадровки. Ниже приведен требуемый код.

См. также:  Blog_post203

До сих пор мы создали приложение без раскадровки, в котором есть контроллер с панелью навигации. Назначьте белый цвет фона контроллеру представления и запустите приложение, и ваш контроллер будет белого цвета. Теперь перейдем к просмотру коллекции.

Добавление collectionView в ваш контроллер!

Прежде всего, нам нужно создать подкласс ViewController от UIViewController до UICollectionViewController, который предоставляется Apple, и когда вы запустите приложение, оно выйдет из строя. Вы обнаружите неприятную ошибку, в которой указано, что параметр не равен нулю, что в основном означает, что вам не хватает макета.

Теперь, чтобы исправить это, давайте добавим макет в представление коллекции в файле AppDelegate, создав макет. Теперь, когда вы запустите приложение с новым макетом, приложение не выйдет из строя.

Ячейки и прочее…

Теперь, когда у нас есть представление коллекции, нам нужно добавить количество ячеек в представление, и мы делаем это с помощью метода numberOfItemsInSection. Допустим, нам нужно 5 ячеек. Следующее, что нам нужно сделать, это сообщить UICollectionViewController, какой тип ячейки нам нужно вернуть, и мы делаем это с помощью метода cellForItemAt indexPath .

Чтобы представление коллекции работало, нам нужно сначала зарегистрировать ячейку с соответствующим идентификатором, идентификатор — это просто строка. Это может немного сбивать с толку, но как только вы к этому привыкнете, это станет проще. И теперь остается только вывести из очереди ячейки с совпадающим идентификатором.

Последнее, что нам нужно сделать, это указать размер этих ячеек, и мы делаем это с помощью метода sizeForItemAt indexPath. Этот метод не будет работать, если в ViewController не включен UICollectionViewDelegateFlowLayout. Ниже приведен требуемый код.

Если вы запустите приложение сейчас, вы найдете симулятор с 5 красными блоками, которые можно прокручивать по вертикали. Вы можете добавлять свои собственные ячейки в каждый блок ..

См. также:  Kotlin Wrappers для основных компонентов React Native, API и навигации React Native By Wix

В основном так вы строите представление коллекции. Apple предоставила фантастическую документацию, ознакомьтесь с UICollectionView документацией, экспериментируйте и исследуйте новые вещи.

Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: