现在的很多的app,当textfield中有输入的字符时候才会让按钮的enabled属性为YES,即可以被点击的状态。比如有信的登录,微信的登录等等界面。
而做不可能去靠线程或者定时器去检测textfield当中的字符串长度,实现这种效果的是textfield 的shouldChangeCharactersInRange回调方法。
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSUInteger length = textField.text.length - range.length + string.length;
if (length > 0) {
btn_login.enabled = YES;
btn_login.alpha = UI_ENABLED_YES_ALPHA;
} else {
btn_login.enabled = NO;
btn_login.alpha = UI_ENABLED_NO_ALPHA;
}
return YES;
}