一個文本字段只需要字母字符,另一個字母是字母數字。我已經在我的ViewController中爲其中的一個定義了shouldChangeCharactersInRange。現在我不知道我應該在哪裏定義其他uitextfield的邏輯。我需要驗證兩個uitextfields的不同。我該怎麼做呢?
有人能幫我理解這應該如何工作嗎?
一個文本字段只需要字母字符,另一個字母是字母數字。我已經在我的ViewController中爲其中的一個定義了shouldChangeCharactersInRange。現在我不知道我應該在哪裏定義其他uitextfield的邏輯。我需要驗證兩個uitextfields的不同。我該怎麼做呢?
有人能幫我理解這應該如何工作嗎?
你有幾個選項。如果您爲文本字段創建了iVar,那麼檢查哪一個正在調用shouldChangeCharactersInRange
就像==
一樣簡單。下面我還展示了另一種選擇是將標籤分配給文本字段並檢查發送文本字段的標籤。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//Your first option
if (textField == myFirstTextField) {
//
}else{
//
}
//another option, if you don't want to create iVars you can assign tags to your text fields and do this
if (textField.tag == 99) {
//
}else{
//
}
}
如果它們都具有相同的委託,他們都希望能在同一shouldChangeCharactersInRange方法驗證。您需要在該方法中添加if-else子句以檢查哪個文本字段是發件人。您需要兩個文本字段的IBOutlets,以便您可以進行比較。