2009-11-03 47 views
1

您好,我是新來的iphone applixcation發展,請讓我知道如何傳遞2個參數登錄按鈕 我想在登錄按鈕的按一下按鈕通過用戶名和密碼。 我以這種方式如何傳遞2個參數的目標C

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

} 

回答

5

不可能已經給在IBAction爲方法2個發送參數。

你可以做的是 創建2個出口,然後將這些連接到用戶名和密碼文本框。 在點擊登錄按鈕,從上述2個出口讀取的文本值。

您的登錄按鈕操作方法是這樣的

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

據我所知,IBActions的定義是這樣的:比平常不同

- (IBAction) actionMethod:(id)sender 

除非你的按鈕子類多,這不會用額外的參數(你的密碼:密碼)來調用IBAction。

您將不得不使用上面的標準定義,從UIButton獲取調用,然後從字段中獲取文本,然後可以將該文本傳遞給另一個將使用這兩個字段進行登錄的方法 - 與UIButton的IBAction。

1

通常情況下,當你連接一個UIButton在Interface Builder中的方法,該方法將沒有參數。從技術上講,它可以有零個,一個或兩個。第一個是發送者(即輕敲按鈕),第二個是事件(抽頭)。
用於控制參見target-action mechanism

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

此外,您將通常作爲IBOutlets鏈接的用戶輸入(如UITextField實例)。然後,您可以通過文本屬性訪問用戶輸入:

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

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

最後,您應該使用正確的類型。用戶名和密碼很可能的NSString *(指向NSString對象)。 「id」是通用類型,在這裏沒有必要。