2012-09-03 80 views
0

在我的應用程序中,我的背景滾動條上有一個滑動手勢識別器,但它不起作用。這是我下面iphone開發:滾動視圖上的滑動識別器

它是在viewDidLoad中

UISwipeGestureRecognizer *Swipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(SwipeRecognizer:)]; 
Swipe.direction = UISwipeGestureRecognizerDirectionUp; 
[backgroundScroller addGestureRecognizer:Swipe]; 

代碼,它是SwipeRecognizer:

- (void) SwipeRecognizer:(UISwipeGestureRecognizer *)sender { 
    if (sender.direction | UISwipeGestureRecognizerDirectionUp){ 
     NSLog(@" *** SWIPE UP ***"); 
    } 
} 

但我不能有任何日誌。我錯過了什麼嗎?謝謝。

編輯:我發現了這個問題。當我說滾動沒有啓用時,我可以識別手勢。但我需要同時滾動和手勢識別。這不可能嗎?

回答

0

具有u註冊UIGestureRecognizerDelegate在.h文件中是這樣的:

@interface yourViewController : UIViewController<UIGestureRecognizerDelegate> 

而且

-(void)SwipeRecognizer:(UISwipeGestureRecognizer *)sender{ 
    if (sender.direction == UISwipeGestureRecognizerDirectionUp){ 
    NSLog(@" *** SWIPE UP ***"); 
    } 
} 
+0

是的,我也試過了,但它仍然不起作用 – death7eater

+0

調試和檢查方法被稱爲 –

+0

我試過了。是的,這是問題。不知何故該方法不叫,但我不知道爲什麼? :/ – death7eater

0

嘗試這樣的。如果你沒有得到任何NSLog(@" *** SwipeRecognizer ***"),那麼我認爲你沒有在SwipeRecognizer上進行測試。

- (void) SwipeRecognizer:(UISwipeGestureRecognizer *)sender { 
NSLog(@" *** SwipeRecognizer ***"); 
if (sender.direction == UISwipeGestureRecognizerDirectionUp){ 
    NSLog(@" *** SWIPE UP ***"); 
} 
} 

我認爲這會對您有所幫助。

+0

不,我還沒有得到任何日誌。 – death7eater