2012-07-24 50 views
0

是否可以使用不同的UITextFields來識別要執行的條件?例如,如果用戶觸摸UITextField *tf1它必須訪問一個條件(使用if語句),並且如果用戶觸摸UITextField *tf2它必須訪問另一個條件。我試過用tags似乎沒有工作。有什麼建議嗎?使用textfield識別條件 - iOS

回答

1

標籤絕對是正確的解決方案。確保每個文本字段都有自己的唯一標記,並確保在讀取它之前將發件人轉換爲操作方法中的控件類型。我喜歡爲它們定義常量,以明確每個控件的用途。例如,在頭文件:

#define RED_TEXT_FIELD 1 
#define BLUE_TEXT_FIELD 2 

在代碼:

-(void) onTouchTextField:(id)sender { 

    UITextField *theField = (UITextField *)sender; 
    if (theField.tag == RED_TEXT_FIELD) { 
     ...do something... 
    } 
    else if (theField.tag == BLUE_TEXT_FIELD) { 
     ...do something... 
    } 
} 
0

可以使用UITextField委託方法,如:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 
{ 
    if(textField == tf1) 
    { 
     // Do something if tf1 is touched 
    } 
    else 
    { 
     // Do something if tf2 is touched 
    } 
} 

希望這可以幫助你... 。