所以我前一阵子找到了这个线程: Change UITextField background when editing started
最佳答案是在用户编辑它时更改 textField 的背景图像的绝佳资源。但是,我的问题是,如何使用 MULTIPLE 文本字段启用此功能?
特别是(对于我的应用程序)我有一个登录名和密码字段。使用我将在下面发布的代码,我可以让我的第一个文本字段在用户点击它时正确更改图像。但是,当用户点击下一个文本字段或键盘上的“下一个”选项时,我无法让下一个字段效仿。由于“textFieldShouldBeginEditing”和结尾只能有一个实例,因此您需要在同一部分下为两个字段设置图像更改代码。但是,当我这样做时,我的两个字段都会在第一个字段被点击时更改,并且在第二个字段被点击时都恢复。
关于这个优秀社区的任何想法?
这是一些代码:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
_userNameTextField.background = [UIImage imageNamed:@"login_field_highlighted@2x"];
return YES;
_passwordTextField.background = [UIImage imageNamed:@"password_field_highlighted@2x"];
return YES;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
_userNameTextField.background = [UIImage imageNamed:@"login_field@2x"];
return YES;
_passwordTextField.background = [UIImage imageNamed:@"password_field@2x"];
return YES;
}
- (BOOL) textFieldShouldReturn:(UITextField *)textField {
NSLog(@"textFieldShouldReturn");
if (textField == _userNameTextField) {
[_passwordTextField becomeFirstResponder];
} else if (textField == _passwordTextField) {
[_passwordTextField resignFirstResponder];
}
return YES;
}