我有5個UITextFields彼此相鄰。每個人都應該捕獲一個針號的數字。這是我如何將輸入限制爲1個字符並將光標移動到下一個文本字段。如何在UITextField上觸發方法
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
if (self.pin1.text.length == 1 && range.length == 0) [self.pin2 becomeFirstResponder];
if (self.pin2.text.length == 1 && range.length == 0) [self.pin3 becomeFirstResponder];
if (self.pin3.text.length == 1 && range.length == 0) [self.pin4 becomeFirstResponder];
if (self.pin4.text.length == 1 && range.length == 0) [self.pin5 becomeFirstResponder];
return YES;
}
一旦用戶在最後一個文本字段(pin5)中輸入最後一位數字,我想添加一些功能來檢查引腳。現在NSLog會做。我該怎麼做呢?
如果我將這行代碼添加到shouldChangeCharactersInRange的末尾。您必須點擊一個數字兩次以獲取第5位數字。
if (self.pin5.text.length == 1 && range.length == 0) NSLog(@"Pin %@, %@, %@, %@, %@", self.pin1.text, self.pin2.text, self.pin3.text, self.pin4.text, self.pin5.text);
根據你的模式,你會不會只是增加一個if語句來檢查,如果文本已經被添加到5腳? – CrimsonChris
有5個文本字段似乎非常有用... – trojanfoe
@CrimsonChris - 好的想法,請參閱上面的編輯。 – user3626407