2011-11-19 76 views
0

我有一個自定義的UIView類。在該視圖內部,有一個圖像視圖。 (我從頭開始製作UISlider)。ContinueTrackingWithTouch:withEvent:方法未被調用?

我想獲取圖像視圖 - 滑塊的拇指 - 移動視圖。下面是從UIView類

- (BOOL)continueTrackingWithTouch:(UITouch *)touch withEvent:(UIEvent *)event { 

    CGPoint touchPoint = [touch locationInView:self]; 


    if (CGRectContainsPoint(self.thumb.frame, touchPoint)) 

     self.thumb.center = CGPointMake(touchPoint.x, self.thumb.center.y); 

    return YES; 

} 

當我把我的滑塊的拇指夾並嘗試拖動它的代碼,沒有任何反應。但是,當我觸摸滑塊的拇指外側時,將手指拖到拇指而不放開,然後嘗試拖動拇指,它可以正常工作。

如何修改我的代碼,以便在某人拿着拇指並嘗試拖動它時調用該方法?

+0

三重柱:[未檢測UITouch在continueTrackingWithTouch?](http://stackoverflow.com/questions/8110896/not-detecting-uitouch-in-continuetrackingwithtouch)和[continueTrackingWithTouch:withEvent沒有被調用](HTTP: //stackoverflow.com/questions/8113951/continuetrackingwithtouchwithevent-not-being-called) –

回答

0

我的猜測是,您的圖像視圖上啓用了用戶交互,而這反過來又不會將觸摸事件中繼到後備邏輯視圖。做這樣的事情:

self.thumb.userInteractionEnabled = NO 

提出,在任何init方法使用的是和拇指視圖不會中斷觸摸事件了。