Typically, when you link a UIButton to a method in Interface Builder, that method will have no parameters. Technically, it can have zero, one, or two. The first is the sender (the button that was tapped) and the second is the event (the tap).
See the target-action mechanism for controls:
- (void)action
- (void)action:(id)sender
- (void)action:(id)sender forEvent:(UIEvent *)event
Also, you will typically link user inputs (such as UITextField instances) as IBOutlets. Then, you can access the user input through the text property:
// in your interface (header file):
IBOutlet UITextField *userNameTextField;
// in your implementation file:
NSString *userName = userNameTextField.text;
Finally, you should use correct types. Usernames and passwords are probably NSString* (pointers to NSString objects). "id" is the generic type and is not necessary here.