У меня есть ограничения на мои UIButtons в приложении iPad, так что верхний ряд кнопок остается на некотором расстоянии от UIImageView, и поэтому нижний ряд кнопок остается прижатым довольно близко к основанию. Однако, когда я вращаюсь, все идет не так. Вот образ того, когда в «Портрет» и «Когда в Пейзаже». Как это можно зафиксировать, учитывая меньшее количество вертикальной недвижимости в ландшафтном режиме?У AutoLayout есть кнопки друг на друга
ответ
Вам нужно будет либо масштабировать размер ваших подобозрения при вращении, или использовать прокрутки ракурс.
Поскольку вы размещаете свои кнопки на некотором расстоянии от нижней части экрана, а не сохраняете согласованный интервал, они перекрываются, когда недостаточно места. (Я предполагаю с ваших скриншотов, что он нарушает ограничение между двумя строками кнопок, если есть один)
Вы можете связать доступное пространство для каждой строки кнопок с общим вертикальным размером основного вида , Например, пусть изображение будет составлять 50% от общего вертикального пространства и 25% для каждой строки кнопок (я бы настроил представление контейнера для каждой строки, а затем добавил ограничения для контейнеров). Убедитесь, что ваши изображения/кнопки правильно масштабируются и поддерживают соотношение сторон.
Другим вариантом может быть распознавание при повороте представления и изменение всех ограничений, так что ваши кнопки будут размещаться в одной строке, но это может привести к приличному количеству кодирования для замены/изменения большинства ваших ограничений.
- 1. Кнопки меняются друг на друга
- 2. Кнопки перекрывают друг друга
- 3. Разместите виджеты друг на друга
- 4. Div друг на друга
- 5. Как разместить DIVs друг у друга
- 6. Разделы друг на друга
- 7. Две кнопки удаляют заданные данные друг друга
- 8. Макеты друг на друга
- 9. LinearLayouts друг на друга
- 10. У меня есть 2 кнопки внутри iframe, вставляя текст родителям textarea, но заменяя друг друга
- 11. Четыре объекта datetimes, касаясь друг друга/наложения друг на друга
- 12. Кнопки в конце внутри друг друга
- 13. Центр JavaFX две кнопки ниже друг друга
- 14. Как сделать положение кнопки относительно друг друга?
- 15. Структуры, ссылающиеся друг на друга
- 16. Два UIScrollView друг на друга?
- 17. Как нажимать на две кнопки одновременно, не дожидаясь друг друга?
- 18. ссылки накладываются друг на друга
- 19. поля ввода android влияют друг на друга
- 20. Укладка разделов друг на друга
- 21. Кнопки, добавленные в FlowLayoutPanel, складываются друг на друга
- 22. Позиционирование divs друг на друга
- 23. Умножьте числа друг на друга
- 24. Div перекрытием друг на друга
- 25. Фрагменты, добавляемые друг на друга?
- 26. Есть ли у друга вид базовых классов?
- 27. снимки наступают друг на друга
- 28. два изображения друг на друга
- 29. Как разместить элементы друг на друга
- 30. TextViews отображаются друг на друга
В настоящее время нет вертикального ограничения между каждым рядом кнопок. Как это можно добавить или добавить? Я использую XIB, а не Storyboard для этого конкретного приложения, поэтому он несколько влияет на его большинство учебников, написанных сейчас для AutoLayout. Как вы считаете, самый простой способ этого? Я бы хотел, чтобы одна строка была повернута, но не знаю, как это сделать. – user717452
Попробуйте поместить вертикальное ограничение между каждой строкой кнопок. Например, ctrl-drag от одной кнопки до той, что находится под ней, и выберите «вертикальное расстояние». Затем найдите ограничение в инспекторе размеров, измените тип с «Равно» на «Больше или равно» и установите константу в 0. Посмотрите, работает ли это для вас. Хотя, в зависимости от того, как настраиваются другие ограничения, это может не сработать. – Stonz2
@ user717452 Я вижу, что оба ваших скриншота взяты из iPad. Если это единственное целевое устройство, другое дело - просто поместить все 6 кнопок в одну строку, будь то в портретной или альбомной ориентации, поскольку на большом экране iPad будет достаточно места для этого. – Stonz2