2015-02-27 2 views
0

Почему этот метод не работает на iPad?Gesture Recognizer не работает на iPad, но работает на iPhone, почему?

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
shouldReceiveTouch:(UITouch *)touch { 

NSLog(@"should receive"); 
return YES; 
} 

Я скопировал тот же VC с раскадровки iPhone на раскадровку iPad.

Код прост, и все, что я пытаюсь сделать, - это показать NSlog.

Пока это работает на симуляторе iPhone, он не работает на симуляторе iPad (или реальном устройстве, проверенном с iPad 4).

Любые предложения относительно того, что я должен сделать, чтобы заставить его работать на iPad?

Я пытаюсь выяснить, что я пропустил, но ничего не приходит на ум.

+0

Вы уверены, что вы просто скопировали файлы? Мой первый инстинкт заключается в том, что UIGestureRecognizerDelegate не установлен или неправильно установлен. –

ответ

0

раскадровке

Если вы добавили свой жест распознаватель в раскадровке. Проверьте, чтобы вы установили его как делегата .., щелкнув правой кнопкой мыши распознаватель и перетащив мышь в контроллер вида. Всплывающее окно ясно покажет это.

enter image description here

В КОД

Если распознаватель добавляется в code..then просто убедитесь, что вы соответствуют протоколу и установить его делегатом.

@interface ViewController : UIViewController <XXXGestureRecognizerDelegate> 

-(void)viewDidLoad 
{ 
    self.someGestureRecognizer.delegate = self; 

    //other code 
} 
+0

Эй, Эрл, спасибо за быстрый ответ, я сделал это по коду и уже делегировал его (так как файл ViewController используется как для iPhone, так и для iPad). любые другие варианты, о которых вы могли бы подумать? – XcodeNOOB

+0

Установил ли ваш экземпляр контроллера просмотра, который присутствует в раскадровке ipad, вашего типа класса в инспекторе класса? –

+0

Да, у меня есть веб-представление, и он идеально подходит для iPhone и iPad. webView имеет выход на раскадровку и связан с кодом (если это имеет какое-то значение). метод shouldRecieveTouch не вызывается на iPad, и это приводит меня в бешенство. – XcodeNOOB

Смежные вопросы