2009-09-21 7 views
0

Dans mon contrôleur de contrôle j'ai ajouté un champ de texte comme ci-dessous.Clavier ne pas dissoudre

txt1 = [[UITextField alloc]initWithFrame:CGRectMake(10, 10, 70, 20)]; 
txt1.delegate = self; 
txt1.borderStyle = UITextBorderStyleRoundedRect; 
[self.view addSubview:txt1]; 
[txt1 release]; 

Je mis UITextFieldDelegate dans le fichier .h. J'écris

-(BOOL)textFieldShouldReturn:(UITextField *)textField 

pour dissmiss mon clavier.Mais il ne déclenche pas la méthode déléguée. Toute aide !!! Merci d'avance.

Répondre

1

Avez-vous essayé d'envoyer le message resignFirstResponder?

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [textField resignFirstResponder]; 
    return YES; 
} 
+0

J'envoie [textField resignFirstResponder] à l'intérieur de textFieldShouldReturn. Mais la méthode du délégué lui-même ne tire pas pendant que je tape sur le bouton de retour. – diana

+0

J'ai fait la même chose dans AppllicationDelegate. Ici, j'ai ajouté le champ de texte dans la fenêtre. Ça fonctionne. Quelle est la raison derrière cela? Une idée? – diana

+0

Vous devez publier l'intégralité du code. – arul

Questions connexes