2009-03-25 6 views
4

J'ai un UIScrollView qui contient un UITextView (non modifiable). Je ne peux pas faire en sorte que UIScrollView obtienne les événements tactiles, UITextView semble les obtenir et les garder. Une idée de comment laisser UIScrollView obtenir les événements tactiles?Faire un UIScrollView obtenir des événements tactiles avec un UITextView comme une sous-vue

Je souhaite que UITextView soit toujours défilable verticalement (mon UIScrollView ne peut défiler que horizontalement).

Répondre

3

Dans votre UITextView sous-classe, faites ceci:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    [self.nextResponder touchesBegan:touches withEvent:event]; 
} 

Si vous voulez UITextView pour gérer les touches aussi, je crois que vous pouvez le faire:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    [self.nextResponder touchesBegan:touches withEvent:event]; 
    [super touchesBegan:touches withEvent:event]; 
} 

mais il pourrait entraîner vraiment comportement bizarre.

+0

Je voudrais garder le défilement activé dans UITextView. Cela évitera-t-il que l'UITextView soit scrollable? J'ai mis à jour ma question pour donner plus d'informations. – pbernery

+0

Il le ferait. Donc vous voulez que les touches soient reçues par les deux vues? –

+0

Ça marche bien! Et aucun comportement bizarre, UIScrollView et UITextView se comporte comme prévu. Je vous remercie! – pbernery

Questions connexes