2014-12-07 11 views
6

Nel mio sottoclasse UITableViewCell aggiungo un gesto padella e in gestureRecognizerShouldBegin metodo che ho controllato self.frame.origin.x e self.frame.origin.y sono entrambi 0.000000 and 0.000000 e dopo l'applicazione TranslationInViewCGPoint translation = [gestureRecognizer translationInView:[self superview]]; sto ottenendo x=-4.000000 and y=0.000000Cercando di capire TranslationInView

Come TranslationInView lavoro, sto cercando di avvolgere la mia testa intorno a esso, quando sto ottenendo la corretta posizione di cella 0.0 e 0.0 perché la prima cella avrà 0.0 e 0.0, perché ho bisogno di TranslationInView.

risposta

9

TranslationInView è un metodo di UIPanGestureRecognizer e indica fino a che punto il tocco è stato spostato dall'ultimo azzeramento. Si resetta quando il tocco si abbassa o se lo si ripristina da solo.

Ad esempio

- (void) pan: (UIPanGestureRecognizer *) recognizer 
{ 
if ((recognizer.state == UIGestureRecognizerStateChanged)||(recognizer.state == UIGestureRecognizerStateEnded)) { 
    CGPoint translation = [recognizer translationInView:self]; 
    } 
} 

La traslazione CGPoint viene aumentata/diminuita la distanza che il gesto è spostato.

Problemi correlati