Реализуйте одно и то же свойство для различных существующих классов в swift - PullRequest
0 голосов
/ 06 декабря 2018

В моем проекте у меня разные представления пользовательского интерфейса одного и того же объекта модели: моя сущность может быть представлена ​​в виде заголовка раздела таблицы (UITableViewHeaderFooterView), ячейки таблицы (UITableViewCell), заголовка раздела коллекции (UICollectionReusableView) илиячейка сбора (UICollectionViewCell).

У этих представлений есть отдельные представления (.xib), но они представляют один и тот же объект с одинаковым поведением (привязки пользовательского интерфейса, действия, ...).Пока у меня есть класс по представлению (UITableViewHeaderFooterView + UITableViewCell + UICollectionReusableView + UICollectionViewCell), но у меня много общего кода для всех классов.

Интересно, как собрать это общееповедения в одном классе, чтобы управлять всеми моими представлениями в одном классе.Я создал класс (наследованный от UIView) с общим поведением, но я не могу использовать его в своих классах Table / Collection, так как множественное наследование невозможно.

1 Ответ

0 голосов
/ 06 декабря 2018

Попробуйте создать один UIView и выполнить весь код настройки в нем.Для каждого типа (UITableViewCell, HeaderFooterView) создайте подкласс и добавьте в него свое представление как подвид.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...