Como posso determinar se um UILabel foi tocado?

Estou tentando determinar se um UILabel foi tocado e, em caso afirmativo, faça alguma coisa. Dê ..

.
.
.
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];
.
.
.    

Então escrevo o retorno de chamada.

 - (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];
  }

O problema está agora, não importa onde eu toque na tela Exibir o URL. Como determino se apenas meu rótulo foi tocado?

questionAnswers(6)

yourAnswerToTheQuestion