У меня есть UIView
, который содержит два объекта UILabel
, которые заполнены программно. Я хочу, чтобы левый UILabel
был выровнен по правому краю, а правый UILabel
- влево. Это мое довольно ASCII представление:Получение двух соседних UILabels для выравнивания по внутреннему краю
___________________
| ______ ______ |
| | ASDF| |ASDF | |
| |______| |______| |
|___________________|
Я пробовал все виды масок и свойство выравнивания безрезультатно. Вот что я считаю правильным решением, поэтому, возможно, кто-то может указать на недостаток в моем понимании.
Контейнер UIView
нуждается в UIViewAutoResizingFlexibleWidth
, чтобы он мог расширяться, чтобы соответствовать этикеткам с переменной шириной. Как слева, так и справа UILabel
необходимо UIViewAutoResizingFlexibleWidth
, чтобы они расширялись, чтобы соответствовать содержимому с переменной шириной. Левому UILabel
требуется UIViewAutoresizingFlexibleRightMargin
, так что левое поле остается фиксированным. Правило UILabel
нуждается в UIViewAutoresizingFlexibleLeftMargin
, так что правый край остается фиксированным.
Концептуальные проблемы с этой реализации:
- Как тексты расширяются, они могли бы просто расширить друг на друга, как бы по-прежнему подходят контейнер
меня возникли проблемы перекрытия, а также так как правый край, похоже, не фиксируется, как предполагается, скорее всего есть большой пробел на правой стороне.
Кто-нибудь знает, что может быть решением?