2013-12-19 66 views
0
添加UISwipeGestureRecognizer

我用這如何在一個UIWebView

UIWebview *webView = [[UIWebView alloc]initWithFrame:CGRectMake(0,0,320,self.view.frame.size.height)]; 

webView.delegate=self; 
[webView.scrollView setScrollEnabled:YES]; 
webView.backgroundColor=[UIColor grayColor]; 
[view1 addSubview:webView]; 

UISwipeGestureRecognizer * Swiperight=[[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swiperight11:)]; 
Swiperight.delegate=self; 
[Swiperight setNumberOfTouchesRequired:1]; 
Swiperight.direction=UISwipeGestureRecognizerDirectionRight; 
[webView addGestureRecognizer:Swiperight]; 

這個向右掃不行的,但是當我們使用這個

[webView addGestureRecognizer:Swiperight]; insted of 
[view1 addGestureRecognizer:Swiperight]; 

那麼它做工精細,所以,我要問的是UISwipeGestureRecognizer不適用於Webview? 幫我

回答

0

您的問題與this one類似。 UIWebView的嵌入式滾動視圖上的手勢識別器首先捕獲手勢。將手勢識別器添加到webView後添加以下內容。

[webView.scrollView.panGestureRecognizer requireGestureRecognizerToFail:Swiperight]; 

請記住,這將阻止用戶向左平移。如果你不想這樣做,那麼使用UIScrollViewDelegate方法來檢測用戶滑動或平移的時間。