Как ограничить элементы в поле зрения? - PullRequest
1 голос
/ 15 апреля 2019

ВАЖНО: Это не основной вид, а вид, который я добавил на основной, и он имеет свой размер.

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

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

Что касается кнопок внутри моего вида, я установил одинаковую ширину и высоту для каждой из них, а затем ограничил их верхний ведущий трейлинг и нижний (все они имеют интервал 7 между ними или их вид).

Ничего из этого не работает, так как вид на голубое небо либо становится больше и шире, либо выходит за пределы экрана, либо все становится очень странным ... Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 17 апреля 2019

Если вы хотите, чтобы этот вид был квадратным в течение очень долгого времени при использовании различных устройств, вам нужно задать ограничение высоты для вида, а также ведущий и трейлинг. Затем сделайте выход для ограничения высоты. В методе viewDidAppear вы должны записать следующий код:

heightConstraint.constant = myView.frame.size.width
0 голосов
/ 15 апреля 2019

Я думаю, что на этот вопрос немного сложно ответить.Но я постараюсь изо всех сил: D Итак, первое, что я хотел бы сделать, это поместить розовые квадраты в stackView и позволить autolayout нам немного помочь.Тогда я бы ограничил blueSkyView.top .leading и .trailing.После ограничения stackView .top, .leading, .trailing, .bottom к blueSkyView, чтобы представление голубого неба могло увеличиваться, чтобы соответствовать стеку внутри.Затем закрепите кнопки снизу, как вы сделали.Например, рассмотрите возможность использования некоторых ограничений «Больше, чем из голубого неба» на кнопку «Случайный цвет», гарантируя, что они никогда не будут перекрываться.

...