2011-07-11 39 views
2

調用UIPanGestureRecognizer的touchesBegan在UIPanGestureRecognizer的自定義子類,當我重寫的touchesBegan:警告從子類

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    [[self view].superview bringSubviewToFront:[self view]]; 
    [super touchesBegan:touches withEvent:event]; 
} 

超行得到警告:

....warning: 'UIPanGestureRecognizer' may not respond to '-touchesBegan:withEvent:' 
... Semantic Issue: 'UIPanGestureRecognizer' may not respond to 'touchesBegan:withEvent:' 

這是爲什麼?

解決此問題的最初嘗試是通過根據UIGestureRecognizer的子類UIGestureRecognizer文檔導入'UIGestureRecognizerSubclass.h',但是當我嘗試這樣做時,我得到'沒有這樣的文件或目錄'錯誤。

我有UIKit.framework包括在內,並嘗試添加

#import <UIKit/UIKit.h> 

,但它也不起作用。

我忘記了什麼嗎?

+0

包含該文件不會阻止您顯示的指示的警告我想,您能告訴我們實際上警告是什麼嗎? – 2011-07-11 13:47:23

回答

7

這是你所需要的:

#import <UIKit/UIGestureRecognizerSubclass.h> 

此外,here是瞭解iOS事件預設電臺,其中包含爲了寫一個手勢識別器子類說明書。

+0

啊,那就是我需要的。我不知道我需要包含'UIKit /'前綴。謝謝! – zlog

+0

感謝您的支持!如果我劃分手勢識別器,我錯過了包含該頭部的需求。這救了我! – Scooter

0

我想你應該明確地導入該文件:

#import <UIKit/UIGestureRecognizerSubclass.h> 

UIGestureRecognizer Reference

您可以創建UIGestureRecognizer識別獨特的手勢,例如一個子類,一個「對號」手勢。如果您要創建這樣一個具體的手勢識別器,請務必導入UIGestureRecognizerSubclass.h頭文件。這個頭文件聲明瞭子類必須覆蓋,調用或重置的所有方法和屬性。