107 votes

Comment ajoutez-vous une action à un bouton par programmation dans xcode

Je sais comment ajouter une IBAction à un bouton en faisant glisser depuis le générateur d’interface, mais je veux ajouter l’action par programme pour gagner du temps et d’éviter de changer en arrière sans cesse. La solution est probablement très simple, mais je n’arrive pas à trouver de réponses lorsque je la recherche. Merci !

225voto

Nick Weaver Points 30418

Essayez ceci:

[myButton addTarget:self 
             action:@selector(myAction) 
   forControlEvents:UIControlEventTouchUpInside];

Vous pouvez trouver une riche source d'information dans la Documentation d'Apple. Jetez un oeil à la UIButton de la documentation, il va révéler que UIButton est un descendant de UIControl, qui met en œuvre la méthode pour ajouter des cibles.

--

Vous aurez besoin de prêter attention à savoir si l'ajout du côlon ou pas après l' myActiondans action:@selector(myAction)

Voici la référence

14voto

Developer Points 121
CGRect buttonFrame = CGRectMake( 10, 80, 100, 30 );
        UIButton *button = [[UIButton alloc] initWithFrame: buttonFrame];
        [button setTitle: @"My Button" forState: UIControlStateNormal];
        [button addTarget:self action:@selector(btnSelected:) forControlEvents:UIControlEventTouchUpInside];
        [button setTitleColor: [UIColor redColor] forState: UIControlStateNormal];
[view addSubview:button];

8voto

XCodian Points 447
 CGRect buttonFrame = CGRectMake( x-pos, y-pos, width, height );   //
 CGRectMake(10,5,10,10) 

 UIButton *button = [[UIButton alloc] initWithFrame: buttonFrame];

 button setTitle: @"My Button" forState: UIControlStateNormal];

 [button addTarget:self action:@selector(btnClicked:) 
 forControlEvents:UIControlEventTouchUpInside];

 [button setTitleColor: [UIColor BlueVolor] forState:
 UIControlStateNormal];

 [view addSubview:button];




 -(void)btnClicked {
    // your code }

3voto

user2677311 Points 11
UIButton *btnNotification=[UIButton buttonWithType:UIButtonTypeCustom];
btnNotification.frame=CGRectMake(130,80,120,40);
btnNotification.backgroundColor=[UIColor greenColor];
[btnNotification setTitle:@"create Notification" forState:UIControlStateNormal];
[btnNotification addTarget:self action:@selector(btnClicked) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnNotification];


}

-(void)btnClicked
{
    // Here You can write functionality 

}

2voto

odrm Points 2820

hérite de . Qui a toutes les méthodes pour ajouter ou supprimer des actions : UIControl Class Reference. Reportez-vous à la section « Préparation et envoi de Messages d’Action », qui couvre et .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X