Привет, так что это моя ситуация до сих пор. Я добавил UIImageView в Interface Builder и установил для него изображение иглы в формате .png (Needle.png), а также подключил его к соответствующему IBOutlet в XCode.
В моем viewDidLoad: метод, который я устанавливаю точку привязки,
- (void)viewDidLoad {
[super viewDidLoad];
[needle.layer setAnchorPoint:CGPointMake( 0.5, 1 )];
}
И я также создал кнопку в Интерфейсном Разработчике и подключил ее к IBAction в XCode, эта кнопка выполняет блок анимации,
- (IBAction)animate {
[UIView beginAnimations:@"rotate" context:nil];
[UIView setAnimationDuration:1.0];
self.needle.transform = CGAffineTransformMakeRotation(10 * M_PI / 180);
[UIView commitAnimations];
}
Поэтому, когда я нажимаю кнопку анимации, изображение моей иглы поворачивается на 10 ° против часовой стрелки, так что это начало. Но я действительно хочу сделать так, чтобы игла постоянно поворачивалась на правильный угол на основе постоянно меняющегося значения.
Например, если у меня есть значение в децибелах, которое дает мне текущий уровень в децибелах в комнате, я бы хотел, чтобы эта стрелка отражала это значение (то есть 10 ° == 10 дБ), и так как это значение постоянно меняется, Я хочу, чтобы моя игла вращалась по часовой стрелке или против часовой стрелки соответственно.
Кто-нибудь знает, как я мог это сделать? Я также был бы признателен, если бы кто-то мог опубликовать некоторый исходный код, чтобы помочь мне.