2012-03-25 9 views
0

私はシェイクジェスチャーを成功裏に実装しましたが、私はそれを1つの特定の状況(私のアプリのオプションパネル内)でのみアクティブにするように制限したいと思います。iPhoneのシェイクジェスチャ検出を特定の状況に制限する方法はありますか?

  • 私は最初にUIWindowのサブクラスであるShakeWindowクラスを作成しました。 ShakeWindowでは、シェイクジェスチャーを登録するために- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)eventを追加しました。

  • 次へ私はAppDelegate.mに行き、window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];を編集してUIWindowの代わりに新しいShakeWindowを使用しました。

素晴らしいですが、どのように機能を制限しますか?私はちょうどObjective-Cを始めていて、自分自身を初心者のコーダーとみなしていますので、答えると心に留めてください、ありがとう!

私はCocos2Dをフレームワークとして使用していますが、Interface Builderを使用していません。

答えて

4

私は誤解が、どのように

- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event { 

    if (/* conditions where my app responds to shake */) { 
     // respond to shake 
    } 
    // otherwise, it's like it never happened 
} 
+0

...について私は時々最も簡単な事は、彼らが実際よりも道難しく見えるように言わなければならないことがあります。ありがとうございました。 – Liuhu

関連する問題