Как ограничить обнаружение жестов встряхивания iPhone конкретной ситуацией? - PullRequest
0 голосов
/ 25 марта 2012

Я успешно реализовал жест встряхивания, но теперь я хотел бы ограничить его активацию только в одной конкретной ситуации (на панели параметров моего приложения).

  • Я впервые создалКласс ShakeWindow, который является подклассом UIWindow.В ShakeWindow я добавил - (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event, чтобы зарегистрировать жест встряски.

  • Затем я перешел на AppDelegate.m и отредактировал window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];, чтобы использовать новый ShakeWindow вместо UIWindow.

Отлично работает, но как мне ограничить его функциональность?Я только начинаю Objective-C и считаю себя в целом начинающим программистом, так что имейте это в виду, отвечая, спасибо!

Я использую Cocos2D в качестве фреймворка и не использую Interface Builder, если это важно.

1 Ответ

4 голосов
/ 25 марта 2012

Я мог бы быть недоразумением, но как насчет ...

- (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
}
...