Да, вы правильно цитировали вещи.Кроме того, я согласен, что это выглядит немного задом наперед, поэтому я благодарен за ваш пост.
Возможно, вы захотите использовать макрос Macro UIViewAutoresizingFlexibleMargins
с препроцессором, когда поле UIView гибкое во всех направлениях.Я поместил это в предварительно скомпилированный заголовочный файл, чтобы он включался повсюду.
#define UIViewAutoresizingFlexibleMargins \
UIViewAutoresizingFlexibleBottomMargin | \
UIViewAutoresizingFlexibleLeftMargin | \
UIViewAutoresizingFlexibleRightMargin | \
UIViewAutoresizingFlexibleTopMargin
Использование UIViewAutoresizingFlexibleMargins
сделает элемент пользовательского интерфейса центрированным, поскольку он НЕ будет обниматься ни с одной стороны.Чтобы элемент увеличивался / уменьшался вместе с его родителем, установите UIViewAutoresizingFlexibleWidth
и UIViewAutoresizingFlexibleHeight
соответственно.
Мне нравится использовать UIViewAutoresizingFlexibleMargins
, потому что позже я могу ссылаться на него следующим образом:
myView.autoresizingMask = UIViewAutoresizingFlexibleMargins;
вместо
myView.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin;
Часто я вижу эти поля ИЛИвместе в одной строке, как в примере выше.Просто трудно читать.