そこで、マイクから受信している入力に関して、半円形のスピードメーター風のビューで針を回転させたいサウンドレベルメーターアプリを構築しています。マイクの結果をラベルに出力でき、この値が (-40 から -90 の間で) 変化するため、マイクが出力していることはわかっていますが、針が動かず、理由がわかりません。
私のコードは次のとおりです。
-(void) addMeterViewContents
{
UIImage *Needle2 = [UIImage imageNamed:@"Needle.png"];
UIImageView *Needle = [[UIImageView alloc] initWithImage:Needle2];
[Needle setFrame:CGRectMake(159, 108, 2, 100)];
self.needleImageView = Needle;
[self.view addSubview:Needle];
angle=([recorder averagePowerForChannel:0])*5000000000;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:2]; // Set how long your animation goes for
[UIView setAnimationBeginsFromCurrentState:YES];
needleImageView.layer.anchorPoint = CGPointMake(0, 0);
needleImageView.transform = CGAffineTransformRotate(needleImageView.transform, angle * M_PI/180);
[UIView commitAnimations];
}
私は次の質問を見ました: それの原点を中心に(騒音計の)針を回転させる方法は?
しかし、これは私に答えを与えませんでした。