Я думаю, что Cocoa Bindings - это немного спорная технология.
Некоторые люди считают, что меньше кода означает меньше ошибок, легче отлаживать, другие считают, что его трудно читать и понимать, это черная магия. За эти годы я несколько раз пытался понять, но без особого успеха. Вчера вечером я прочитал блестящую книгу Стюарта Гримшоу. Я очень рекомендую его книгу, он написал много очень полезных концепций об общем программировании и кодировании на Swift.
В этом руководстве показано простое табличное представление:
Шаг 1. Создайте новый проект Swift с помощью Storyboard:
Шаг 2. Добавьте новый файл с классом Person, который соответствует KVO:
Шаг 3. Создайте массив в ViewController.swift
в качестве источника данных TableView. Это будет последний код, который нам нужно написать:
Шаг 4. Перейдите в Main.storyboard и добавьте ArrayController
из библиотеки:
Сделайте нашу жизнь проще, назовите этот контроллер PeopleArrayController
:
Щелкните «Показать инспектора привязок» в правом верхнем углу. Внесите изменения, показанные на картинке.
- Свяжите наш новый
ArrayController
сViewController
- Установите
Model Key Path
вpeopleArray
или имя массива в вашемViewController.swift
.
Шаг 5. Добавьте представление таблицы из библиотеки:
По умолчанию в табличном представлении всего 2 строки, добавьте еще одну для номера мобильного телефона:
Теперь подключите контроллер массива и табличное представление:
Назовите столбцы представления таблицы:
В качестве последнего шага привяжите представление ячеек таблицы:
Шаг 6. Сборка и запуск:
Исходный код: Github
Источники:
- Стюарт Гримшоу - Освоение программирования на macOS
- Thomas Grossen - Привязка TableView к Swift 4 и Storyboard
- Таун Чапман - Привязки, лучший код - это код, который не написан
Первоначально опубликовано на https://kicsipixel.github.io 30 апреля 2020 г.