J'ai rencontré une erreur lors de la transmission des arguments dans la méthode @selector
.Passage des arguments dans la méthode @selector
Ceci est mon code:
-(void) accessoryView : (UITextField*) textField
{
UIToolbar* numberToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];
numberToolbar.barStyle = UIBarStyleBlackTranslucent;
numberToolbar.items = @[[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(cancelNumberPad)],
[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],
[[UIBarButtonItem alloc]initWithTitle:@"Apply" style:UIBarButtonItemStyleDone target:self action:@selector(doneWithNumberPad:textField:)]];
[numberToolbar sizeToFit];
textField.inputAccessoryView = numberToolbar;
}
-(void)doneWithNumberPad : (UITextField*) txt : (id) sender {
}
Vous ne pouvez pas transmettre d'arguments arbitraires au sélecteur d'action; le sélecteur doit être conforme au format attendu par l'élément du bouton de la barre – Paulw11
Existe-t-il un autre moyen de passer la méthode "textField" à la méthode "doneWithNumberPad"? –