このコードでxyzを過ぎて回転しないようにノブを止める方法はありますか?あなたは常にそれを周り続けていくことができないのですか?私は回転可能なノブを作ろうとしています。それは動作しますが、現在はクランプされていないので、誰かが完全な円で前方と後方に向けることができます。私はそれをしないようにしたいので、最小値と最大値があります。ノブを止めてxyz度を超えて回転させないようにして、0度から後方に回転しないようにします
- (void)rotating:(KTOneFingerRotationGestureRecognizer *)recognizer {
[self doRotation:recognizer.rotation];
[recognizer setRotation:0];
}
- (void)doRotation:(float)rot {
CGFloat theAngle = atan2(knob.transform.b, knob.transform.a);
float temp_var = RADIANS_TO_DEGREES(theAngle);
if(temp_var < 0) temp_var = 360 - fabs(temp_var);
float percent = (temp_var/315) * 100;
float val = ((float)(percent))/100;
knob.transform = CGAffineTransformRotate([knob transform], rot);
if(percent < 100 && percent > 0) {
display.text = [[NSString alloc] initWithFormat:@"%.f", percent];
}
}
でロックされている反時計回りに回転することはできません!どうもありがとうございます!しかし、1つの質問。角度を設定することはできますか?例えば、現在の角度が3.5の場合は? – TayW
私はその質問を理解していません。ただし、好きなようにサンプルを変更することができます。全体を通して使用される「0」および「5」限界は任意である。 – matt
私が言っていることは、デフォルト値を設定しているということですか? umは、ノブを回してアプリケーションを終了すると、回転を覚えて、アプリケーションを再び開いたときの最後の位置に戻します。 – TayW