0

ユーザーがiPhoneを振るとアニメーションが再生されるアプリを作成しており、次のコードを使用しています。

- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
if (event.subtype == UIEventSubtypeMotionShake)
{
    animation...
}

上記のコードは、ユーザーがiPhoneを振るとすぐに1回だけ反応します。ユーザーがボトルを振っているように、数秒間上下に振ってからアニメーションを再生する必要があります。また、振っている間はmp3ファイルを再生する必要があり、アニメーションを再生するときはサウンドを再生する必要があります。助けて、私は完全な初心者なので、答えを説明してください、ありがとう:)

4

1 に答える 1

2

.hファイルで宣言int numOfShakes; し、ユーザーが電話を振るたびにインクリメントし、一定量のシェイクに達したら、アニメーションコードを呼び出します

- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
        if (event.subtype == UIEventSubtypeMotionShake) {
            if (numOfShakes == 10) {
                //animate
                //Shook for a couple seconds
                numOfShakes = 0;
            } else {
                numOfShakes++;
                if (numOfShakes == 1) {
                //play some mp3
                }
            }
        }
    }
于 2012-07-15T15:04:28.987 に答える