UIView: размер кадра отличается от размера границ? - PullRequest
2 голосов
/ 04 января 2010

Возможно ли иметь UIView с размером границ, отличным от размера его кадра?

Я пытаюсь создать UIView с рамкой "{{0,0}, {320,367}}" и границами {{0,15}, {320,337}} ", но я не могу сделать это, используя setBounds () и setFrame ().

Я узнал из документа, что изменение границ или фрейма соответственно изменяет фрейм или границы, но я подумал, что можно иметь разные значения для тезисов.

Большое спасибо.

Ответы [ 2 ]

4 голосов
/ 04 января 2010

Да, когда устройство поворачивается, вся ваша иерархия представления преобразуется с использованием CGAffineTransform. В этом случае ваши границы и рамки могут иметь разные значения. Лучший способ убедиться в том, что позиция вида - это установить его свойство bounds для размера и свойство center для позиции.

2 голосов
/ 04 января 2010

Обычно:
1. Границы в точке (0,0), в то время как рамка (и центр) задают позицию вида.
2. Границы и рамка будут иметь одинаковую ширину и высоту.

UPDATE
Похоже, вы хотите добавить кнопку под конкретным видом, который был ранее больше.
В этом случае я бы создал новый вид, который занимает все пространство. Затем я бы добавил теперь уменьшенный конкретный вид в нужную позицию в качестве подпредставления. Наконец, я бы добавил новую кнопку в нужной позиции в качестве другого подпредставления для нового представления полного пространства.
Вы можете сделать это расположение в Интерфейсном Разработчике или коде.

...