2013-02-28 33 views
0

我在UIView裏面有UIScrollView。對於定製的尋呼目的,我已將此UIScrollView的剪輯設置爲否,因此UIScrollView仍顯示在UIView的區域A和區域B.UIView裏面的UIScrollView,UIView手勢單線程

[區域A [UIScrollView中]區域B]

現在我想地區AB能夠觸發的UIScrollView's觸摸時..我記得有一個一個襯墊(像滾動事件[X addGestureRecognizer ...])這樣做,但我忘記了它是什麼......如果有人能告訴我這是什麼,那將是非常棒的!

回答

1

如果你想在UIScrollView的滾動手勢重定向到另一個視圖,你可以這樣做:

[paddingView addGestureRecognizer:scrollView.panGestureRecognizer]; 
+0

謝謝!!!是的,這是一個......所以它是'panGesureRecognizer' ..我誤認爲它是別的..當我的投票可用時,upvote :) – 2013-02-28 15:57:51

+0

Waouh!我不知道這件事。這真的很棒,看起來很完美。謝謝。 – Zedenem 2013-03-01 10:56:19

1

這不會讓你有一個流暢的控制你的滾動,就像你從UIScrollView得到的那個。

但是,您可以使用此代碼:

UISwipeGestureRecognizer *leftSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(viewSwiped:)]; 
[leftSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionLeft]; 
[self.view addGestureRecognizer:leftSwipeGestureRecognizer]; 
[leftSwipeGestureRecognizer release]; 

UISwipeGestureRecognizer *rightSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(viewSwiped:)]; 
[rightSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionRight]; 
[self.view addGestureRecognizer:rightSwipeGestureRecognizer]; 
[rightSwipeGestureRecognizer release]; 

射擊這種方法:

- (void)viewSwiped:(UISwipeGestureRecognizer *)swipeGestureRecognizer { 
    switch (swipeGestureRecognizer.direction) { 
     case UISwipeGestureRecognizerDirectionLeft: 
      // Make your scroll view scroll 
      break; 
     case UISwipeGestureRecognizerDirectionRight: 
      // Make your scroll view scroll 
      break; 
     default: 
      // Do Nothing 
      break; 
    } 
} 

它可以讓你找回相應地揮筆手勢和頁面您UIScrollView。其他

兩個解決方案可能會更好:

  1. 您可以使用UIPanGestureRecognizer以同樣的方式同上。它可以識別真實的平移手勢,而不僅是分離的滑動手勢,但是手指和UIScrollView之間的同步實現會稍微複雜一些。
  2. 您可以讓UIScrollView佔用UIView的總寬度,並自行管理分頁,重新計算您的步驟,同時通過UIScrollViewDelegate跟蹤UIScrollView的當前狀態。再一次,有點困難。

希望這將幫助,

+0

謝謝!我正在尋找一個單線雖然..但它看起來不錯!當我得票時,我會贊成它!目前我用完了所有票... – 2013-02-28 15:56:48