Поворот изображения вокруг заранее определенной оси - PullRequest
0 голосов
/ 03 августа 2011

У меня в приложении вид с метра. У метра есть стрелка, которая вращается до сих пор в зависимости от набора логических значений, которые я передаю ему. Проблема в том, что у меня много проблем с тем, чтобы заставить иглу вращаться правильно.

needle.layer.anchorPoint = CGPointMake(0.85, 0.5); // Set point of rotation

if(isHelpful == true)
{
    // rotate only a little
    needle.transform = CGAffineTransformMakeRotation(7*M_PI/180);
}

if(isNeeded == true)
{
    // rotate 95 degrees
    needle.transform = CGAffineTransformMakeRotation(95*M_PI/180);
}

if(isCritical == true)
{
    // rotate 175 degrees
    needle.transform = CGAffineTransformMakeRotation(175*M_PI/180);
}

Это заставляет иглу вращаться идеально, но она также по какой-то причине меняет свое положение, двигаясь по всему кончику. Мне нужно, чтобы изображение оставалось в том же месте на кончике и вращалось вокруг определенной оси до определенной степени.

Изображение 145x36, а его ось имеет точку 127x18.

1 Ответ

0 голосов
/ 03 августа 2011

Изменение anchorPoint слоя вашего вида обязательно влияет на положение.У Брэда Ларсона есть превосходное объяснение в ответ на этот вопрос .

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