встряхивание симулятора iphone не имеет никакой функции - PullRequest
0 голосов
/ 20 марта 2011

Привет всем, я надеялся протестировать функцию встряхивания на симуляторе, поэтому в меню «Оборудование» я выбираю «Жест дрожания».Но ничего не произошло, что не так?

Приветствую любой комментарий

Спасибо

Марк

Ответы [ 2 ]

0 голосов
/ 20 марта 2011

Нажатие «Жест встряски» в симуляторе iPhone не воспроизводит анимацию - возможно, именно поэтому оно, похоже, ничего не делает?

Вы можете получать уведомления о событиях встряхивания в своем коде, реализуя motionEnded:withEvent: в подклассе UIResponder.Например, если вам нужно создать пользовательский подкласс UIWindow:

// ShakeWindow.h
@interface ShakeWindow : UIWindow
@end

// ShakeWindow.m
#import "ShakeWindow.h"

@implementation ShakeWindow

- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
  if (motion == UIEventSubtypeMotionShake) {
    NSLog(@"Shake!");
  }
}

@end

Для получения дополнительной информации см. Раздел События движения в Руководстве Apple по обработке событий для iOS.

0 голосов
/ 20 марта 2011
-(void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    [self becomeFirstResponder];
}

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

    if (motion == UIEventSubtypeMotionShake) {
        NSLog(@"shake");
        //your code
    }

}
...