На что следует обращать внимание при совмещении Autolayout и позиционирования в iOS? - PullRequest
0 голосов
/ 20 октября 2019

Я работаю над проектом iOS, который использует автоматическое расположение для настройки представления с представлением прокрутки и стеком в качестве содержимого представления прокрутки.

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

Однако теперь возникает вопрос, когда я собираюсь реализовать определяемые пользователем макеты для представления отчетов.

Стек содержит представлениевыделенный для пользовательских макетов.

Пользователь определит вывод данных (например, «преимущества») и источник (верхний левый угол), и это представление будет размещено там. Они могут разместить столько или всего несколько представлений и фрагментов данных, которые предоставляются им таким образом. Они не будут разбираться в автоматической компоновке и, следовательно, будут полагаться исключительно на точное позиционирование этих видов через верхний левый угол и их размер.

Есть ли что-то, о чем мне следует знать перед началом этой фазы проекта? Меня беспокоит смешивание / сопоставление автоматической разметки в глобальной разметке и точное позиционирование внутри этого единственного конкретного представления.

Поиск входных данных о предостережениях, код, который я ДОЛЖЕН включать (например, любые флаги, которые должны быть установлены)и пр.

Спасибо за любую помощь, D

1 Ответ

0 голосов
/ 28 октября 2019

Спасибо за все предложения.

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

Для тех, кто заинтересован, я создал «фиктивный» UIView для хранения всех пользовательских виджетов, а затем создал ограничения Autolayout на основе верхнего и левого якорей этого представления.

Поскольку виджеты создаются путем чтения макета из словаря, если они вносят изменения в макет, я просто удаляю / обновляю макет, если они вносят изменения.

Еще раз спасибо за слепки, без которых яне подумал бы об этом решении.

D

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