Dans ma vue j'ai 3 UITextField, pour chacun d'eux, j'ai créé un accessoireView pour le clavier comme expliqué par apple.ResignFirstResponder de Keyboard AccessoryView Button
Dans mon accessoireView j'ai ajouté un bouton qui doit appeler la fonction "CloseKeyboard". Dans cette fonction je ne peux pas trouver un moyen d'intercepter le UITextField dans lequel le clavier écrit et sur lequel j'ai besoin d'appeler ResignFristResponder.
Pour ajouter accessoryView sur un champ i écrit que le code
if (field1.inputAccessoryView == nil) {
field1.inputAccessoryView = [self createInputAccessoryView];
}
if (field2.inputAccessoryView == nil) {
field2.inputAccessoryView = [self createInputAccessoryView];
}
if (field3.inputAccessoryView == nil) {
field3.inputAccessoryView = [self createInputAccessoryView];
}
Et ici la fonction createInputAccessory:
-(UIView *)createInputAccessoryView {
CGRect accessFrame = CGRectMake(0.0, 0.0, 20.0, 55.0);
UIView *inputAccessoryView = [[UIView alloc] initWithFrame:accessFrame];
UIButton *compButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
compButton.frame = CGRectMake(250.0, 10.0, 60.0, 40.0);
[compButton setTitle: @"Close" forState:UIControlStateNormal];
[compButton addTarget:self action:@selector(CloseKeyboard:)
forControlEvents:UIControlEventTouchUpInside];
[inputAccessoryView addSubview:compButton];
return inputAccessoryView; }
Comment puis-je mettre en œuvre la fonction "CloseKeyboard" pour être en mesure de resignFirstResponder de UITextField actif ?
Nous vous remercions de votre aide!