Почему установка точки привязки прямоугольника границ слоя ведет себя так странно? - PullRequest
3 голосов
/ 13 мая 2009

Я пытаюсь установить свойство anchorPoint, чтобы повернуть вид по четко определенной оси. Но:

myView.layer.anchorPoint = CGPointMake(myView.layer.anchorPoint.x - 1.0, myView.layer.anchorPoint.y);

Если я сместлю его на -1,0, он не просто переместится на 1 единицу влево. Вместо этого весь мой вид перемещается на ширину вида вправо.

Что это за система координат? Кажется перевернутым. Но также единицы не совпадают, например, с myView.frame.size.width?

1 Ответ

12 голосов
/ 13 мая 2009

anchorPoint - нормализованная позиция в вашем слое. То есть (0.0, 0.0) - это верхний левый угол вашего слоя (в системе координат слоя iPhone UIView), а (1.0, 1.0) - нижний правый угол. (0.5, 0.5) - середина вашего слоя. Эти позиции не зависят от размера и, следовательно, являются просто относительными местоположениями.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...