Что бы это ни стоило, вот позиция Apple по этому вопросу:
Обычно вы изменяете свойство transform вида, когда хотите реализовать анимацию.Например, вы можете использовать это свойство для создания анимации вашего вида, вращающегося вокруг его центральной точки.Вы не будете использовать это свойство для внесения постоянных изменений в ваше представление, таких как изменение его положения или размера представления в пределах координатного пространства его суперпредставления.Для этого типа изменений вы должны изменить вместо этого прямоугольник рамки вашего вида.
Источник: Просмотреть руководство по программированию для iOS, Архитектура вида и окна
(Я предполагаю, что одним исключением будет постоянно повернутые представления, что было бы невозможно выполнить с модификациями фреймов.)
Я также определил, что CGAffineTransforms, по-видимому, изменяют основное визуализированное изображение вида, а не его содержимоепоэтому (например) применение CGAffineTransformScale принципиально отличается от расширения кадра.Я не уверен, действительно ли это так, или же это зависит от contentMode / других факторов.
Я до сих пор не совсем понимаю, как взаимодействуют фрейм, границы и преобразование представления.Вы можете, например, установить кадр вида после применения поворота, и он будет относительно повернутого вида, тогда как изменение границ будет применять преобразование к предварительному вращению вида (IIRC).