Добавьте несколько случайных движений, используя вращение - PullRequest
1 голос
/ 31 марта 2011

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

needleView.layer.anchorPoint = CGPointMake(0.5, 0.5);
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:5.0];
[UIView setAnimationBeginsFromCurrentState:YES];
// rotate 90 degrees of arc, in this case, from 90 degrees clockwise to 180 degrees:
self.needleView.transform = CGAffineTransformMakeRotation(90 * M_PI / 180);

[UIView commitAnimations];

Работает нормально. Однако я хочу добавить анимацию туда-сюда, пока игла наконец не остановится на желаемом значении, другими словами, добавить некоторый отскок к движению иглы. Я не могу понять, как это сделать.

Любая помощь приветствуется. LQ

1 Ответ

0 голосов
/ 31 марта 2011

Один из подходов состоит в том, чтобы разбить ваши колебания иглы на части и применить случайный джиттер между колебаниями:

  1. Создать список равномерных шагов по дуге
  2. Вставить + или - джиттер в шаги
  3. Зафиксируйте каждый как анимацию duration / steps
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...