2012-01-20 1 views
6

question rapide et facileiOS - détecter lorsque copie utilisateur presse-papiers - [UIPasteboard generalPasteboard]

tout en utilisant un WebView avec un texte en elle - l'utilisateur peut sélectionner un extrait de texte de celui-ci et appuyez sur une UIButton que je créé - l'exécution de l'action suivante:

-(IBAction)copyToClip 
{ 
    NSString *copyClip = [UIPasteboard generalPasteboard].string; 
    NSLog(@"Clip = %@",copyClip); 
    // (works fine) 
} 

Je voudrais appeler la même fonction sans UIButton, donc lorsque l'utilisateur a fait une action « copie » il activera le code ci-dessus. (Je suppose un auditeur)

quel serait l'auditeur approprié pour cela?

+0

avez-vous vérifier ces notifications: http: //stackoverflow.com/questions/4240087/receiving-uipasteboard-generalpasteboard-notification-while-in-the -Contexte ? –

Répondre

9

Utilisez NSNotificationCenter et inscrivez-vous UIPasteboardChangedNotification: http://developer.apple.com/library/IOs/documentation/UIKit/Reference/UIPasteboard_Class/Reference.html#//apple_ref/c/data/UIPasteboardChangedNotification

[[NSNotificationCenter defaultCenter] addObserver:object selector:@selector(copyToClip) name:UIPasteboardChangedNotification object:nil]; 
+1

merci! fonctionne très bien. – chewy

+1

Hé, Est-ce que ça fonctionne quand l'utilisateur copie n'importe quoi dans une autre application. –

Questions connexes