2012-10-22 143 views
1

我有一個視圖,其中我有一個滾動視圖。我想檢測觸摸開始,移動等方法。我使用這些方法。這些方法在滾動視圖外部正常工作,但不起作用scrollview.Tell我爲什麼它不工作,什麼是解決方案。在子視圖中觸摸檢測

+0

有你加上'scrollView.userInteractionEnabled = YES,默認情況下爲''UIScrollView' – Venkat

+0

@Unknown,'userInteractionEnabled = YES'。 – Hemang

+0

是的,用戶交互是默認啓用的。 –

回答

1

你必須子類UIView(as MyUIView)並實現touch委託。

然後MyUIView添加到UIScrollView的

如:

@interface MyUIView : UIViewController { 

    } 
    @end 

    @implementation MyUIView 

     //implement touch delegate here 
    } 

加入這一行的主視圖

MyUIView *myUIView = [[MyUIView alloc] init]; 
myUIView.userIntarctionEnabled = YES; 
[yourScrollView addSubView:myUIView.view]; 

注意:您可以使用UIGustures代替子類。 UIGestureRecognizer類可用於幫助檢測和響應iOS設備上常見的各種UI手勢。

+0

這個類是視圖控制器,我通過故事板做了同樣的處理。 –

+0

我也使用了UIGustures,但他們將無法幫助我檢測移動,開始等。 –

+0

然後將子類UIViewController和UIViewController.view作爲子滾動條的子視圖 –

0

使用convertPoint: toView:方法。

CGPoint *point = [yourView convertPoint:touchPoint toView:yourScrollView]; 
+0

對不起,我無法理解。 –