2009-11-03 5 views
1

Salut je suis nouveau à l'application iphone développement, S'il vous plaît laissez-moi savoir comment passer 2 paramètres de connexion bouton Je veux passer le nom d'utilisateur et mot de passe sur le bouton clic du bouton de connexion. j'ai donné de cette manièrecomment passer 2 paramètres dans l'objectif c

-(IBAction)Login_Method:(id)sender withpassword:(id)password 
{ 

} 

Répondre

5

Il est impossible d'envoyer 2 paramètres dans une méthode IBAction.

Ce que vous pouvez faire est Créez 2 prises, puis connectez-les aux champs de texte mot de passe et nom d'utilisateur. Activé En cliquant sur le bouton de connexion, lisez la valeur textuelle des deux points de vente ci-dessus.

Votre identifiant méthode d'action de bouton sera comme celui-ci

//username and password are UITextfields 
-(IBAction)Login_Method:(id)sender 
{ 
    id name=[username text]; 
    id pass=[password text]; 
} 
1

Pour autant que je sache, IBActions sont définis ainsi:

- (IBAction) actionMethod:(id)sender 

À moins que votre bouton est sous-classé très différemment que d'habitude, il ne va pas appeler IBAction avec un paramètre supplémentaire (votre mot de passe: mot de passe).

Vous devrez utiliser la définition standard ci-dessus, obtenir l'appel de l'UIButton, puis obtenir le texte de vos champs et ensuite vous pouvez passer à une autre méthode qui fera la connexion avec ces deux champs - sans rapport avec l'IBAction d'UIButton.

1

Généralement, lorsque vous liez un UIButton à une méthode dans Interface Builder, cette méthode n'a aucun paramètre. Techniquement, il peut avoir zéro, un ou deux. Le premier est l'expéditeur (le bouton qui a été tapé) et le second est l'événement (le robinet).
Voir la target-action mechanism pour les contrôles:

- (void)action 
- (void)action:(id)sender 
- (void)action:(id)sender forEvent:(UIEvent *)event 

En outre, vous relieront généralement entrées utilisateur (telles que les instances UITextField) comme IBOutlets. Ensuite, vous pouvez accéder à l'entrée utilisateur via la propriété text:

// in your interface (header file): 
IBOutlet UITextField *userNameTextField; 

// in your implementation file: 
NSString *userName = userNameTextField.text; 

Enfin, vous devez utiliser les types corrects. Les noms d'utilisateur et les mots de passe sont probablement NSString * (pointeurs vers des objets NSString). "id" est le type générique et n'est pas nécessaire ici.

Questions connexes