Comment puis-je déterminer si un UILabel a été touché?

Je suis en train d'essayer de déterminer si un UILabel a été touché et si faire quelque chose. Donner ..

.
.
.
UILabel * site = [[UILabel alloc] initWithFrame:CGRectMake(0, 185, 320, 30)];
site.text = [retriever.plistDict valueForKey:@"url"];
site.textAlignment =UITextAlignmentCenter;
site.backgroundColor = [UIColor clearColor];
site.textColor = [UIColor whiteColor];
site.userInteractionEnabled = YES;
[theBgView addSubview:site];
[site release];
.
.
.    

Puis-je écrire la fonction de rappel.

 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
    retriever = [PListRetriever sharedInstance];
    CGPoint pt = [[touches anyObject] locationInView: self];
        NSURL *target = [[NSURL alloc] initWithString:[retriever.plistDict valueForKey:@"url"]];
        [[UIApplication sharedApplication] openURL:target];
  }

Le problème est maintenant, peu importe où je touche à l'Affichage de l'Url est en cours d'ouverture. Comment puis-je déterminer si seulement mon label a été touché?

source d'informationauteur Sean McCully