2009-08-28 8 views

Répondre

10

UITextView est une sous-classe de UIScrollView, qui a une classe UIScrollViewDelegate pour contrôler le comportement lié au défilement. Une de ses méthodes est scrollViewDidEndDecelerating. Vous pouvez demander à votre contrôleur de vue d'implémenter ce protocole, de définir la propriété delegate de votre UITextView sur le contrôleur de vue, puis d'implémenter la méthode scrollViewDidEndDecelerating. Lorsque la méthode est appelée, le UITextView aura terminé le défilement. .: par exemple

dans .h:

@interface MyViewController : UIViewController <UIScrollViewDelegate> 

dans .m:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView 
{ 
    NSLog(@"Finished scrolling"); 
} 
+0

Merci. Je pense que j'ai obtenu la plupart de cela, sauf pour définir la propriété delegateView UITextView au contrôleur de vue. Pouvez-vous clarifier à ce sujet? (Je suis un débutant) – GL777

+0

Bien sûr. Une fois que vous avez un délégué (dans votre cas, votre contrôleur de vue), vous devez indiquer à UITextView qui est le délégué. Vous pouvez le faire visuellement dans Interface Builder (cliquez sur UITextView, affichez l'inspecteur Connections, faites glisser la propriété 'delegate' vers le propriétaire du fichier) ou le code interne, à l'intérieur de la méthode viewDidLoad de votre contrôleur view, avec quelque chose comme" myTextView.delegate = soi-même; " –

+0

Merci! Ça a marché! Une chose: Quand je l'ai fait via le code (myTextView.delegate = self;) je reçois un avertissement disant "la classe MYCLASS n'implémente pas le protocole UITextDelegate". Des idées ce que c'est? Merci encore!!! – GL777

Questions connexes