Маржа и дополнение для элементов пользовательского интерфейса в iOS

Я до сих пор разрабатывал для Android. Там вы можете установить layoutMargin и дополнение для почти каждого элемента пользовательского интерфейса (при описании интерфейса в XML файле).

Как это делается в коде для UIViews в iOS (если есть общая команда)?

Тпх

Ответ 1

iOS использует другой подход к управлению размещением - нет механизма компоновки, вы указываете абсолютные координаты и размер для всех элементов управления. Kinda, как AbsoluteLayout в Android.

Таким образом, понятия margin и padding на самом деле не применяются - пробелы между соседними элементами управления полностью зависят от вас, они не вычисляются системой. То же самое для размеров.

Это затрудняет реализацию сценария "сделайте этот элемент управления настолько большим, насколько это необходимо для его текста". Тем не менее, вы не столкнетесь с обмотанными линиями.

EDIT: AbsoluteLayout устарел в наши дни.

Ответ 2

Вы размещаете элементы пользовательского интерфейса либо в коде, либо с помощью Interface Builder (или редактора .xib в Xcode 4). Вы укажете фактические координаты для своих просмотров, но вы также можете указать поведение изменения размера для каждого вида. Таким образом, вы можете сказать, что конкретный вид всегда должен иметь одинаковый размер и оставаться горизонтально по центру или что он должен поддерживать его размер и поддерживать левый край, или он должен растягиваться, чтобы сохранить левое и правое поля и т.д. Найдите раздел "автосохранение" в IB или установите свойство autoresizingMask любого вида в коде.

Ответ 3

В ios вы можете использовать Interface Builder для дизайна. Вы все еще можете использовать xml, но никто не использует это.