0

沒有響應我目前面臨的,我在一個視圖&我想右輕掃手勢當用戶刷卡從索引值0右側工作使用UIPageViewController的場景,所以我想通過下面的代碼到右輕掃手勢添加到UIPageViewController的iOS:右輕掃手勢在UIPageViewController

UISwipeGestureRecognizer *rightRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)]; 
rightRecognizer.direction = UISwipeGestureRecognizerDirectionRight; 
[rightRecognizer setNumberOfTouchesRequired:1]; 
//Edit 1 
[self.pageViewController.view addGestureRecognizer:rightRecognizer]; 

,但是,當我加入的手勢pageviewcontroller我收到以下錯誤信息(通過@Lyndsey斯科特回答解決)

no visible interface uipageviewcontroller declares the selector addgesturerecognizer 

任何人都可以指導我,我怎麼能實現本pageViewController

編輯1右輕掃:取代@Lyndsey斯科特提供的代碼,去掉了錯誤,但問題仍然存在,我不能觸發該滑動事件。

回答

5

你要的姿態向UIPageViewController的看法:

[self.pageViewController.view addGestureRecognizer:rightRecognizer]; 

編輯迴應您的編輯:

,如果你還沒有實施任何的滑動手勢將無法正常工作UIGestureRecognizerDelegate方法允許UIPageViewController的輕掃手勢和您的輕掃手勢被同時識別。目前,您的滑動功能基本上被頁面控制器的手勢阻擋。你可以改變通過實施UIGestureRecognizerDelegate,設置rightRecognizer.delegate = self;,和壓倒一切的gestureRecognizer: shouldRecognizeSimultaneouslyWithGestureRecognizer:otherGestureRecognizer使得它在這兩個手勢識別器被觸發的情況下返回true。

但如果你希望頁面翻轉和你的姿態在那個翻頁的時間被識別,增加額外的滑動手勢是不必要的,因爲你可以簡單地觸發在翻頁的方法;例如在pageViewController:didFinishAnimating:previousViewControllers: transitionCompleted:中。

+0

這已經消除了我的錯誤,但選擇器沒有被正確的刷卡調用。有什麼建議麼? – iYoung

+0

@RajatDeepSingh的問題是,它被封鎖的默認識別器,你大概手勢同時承認,但如果你想在網頁刷卡*和*在同一時間被識別的姿態,加入刷卡手勢是不必要的,因爲你可以簡單地觸發你的方法翻頁... –

+0

@RajatDeepSingh - 認爲你的問題已被回答。你在問另一個問題。請接受答案併發布新問題。 –

0

你不應該添加手勢識別,如果你正確地執行協議它應該工作開箱。

UIPageViewController的一點是不必做手工。

+0

我想你誤解了它,我想對極端的左分頁視圖做額外的操作,當分頁索引爲'0'時,我想在用戶從左向右滑動時執行操作。 – iYoung