iPhone – 在UITextfield下面显示错误信息的最佳方式是什么?

我有一个与许多UITextfields,如名称,密码,电子邮件等forms,并在validation期间,我想要显示相应的文本字段下面的字段的错误消息。

做这个的最好方式是什么。 任何例子都会有帮助。

创build一个包含文本字段,标签和validation块的新对象模型。 当文本字段退出第一个响应者时,调用该块检查它是否有效,如果不是,则显示标签

像这样的东西

@protocol ValidationTextFieldDelegate -(void) validationTextField:(ValidationTextField*)textField didResignWithResult:(BOOL)result; @end @interface ValidationTextField : NSObject <UITextFieldDelegate> @property (nonatomic, strong) UITextField *textField; @property (nonatomic, strong) UILabel *errorLabel; @property (copy) void(^validationBlock)(BOOL); @property (nonatomic, assign) id<ValidationTextFieldDelegate> delegate; @end @implementation ValidationTextField -(void)textFieldDidEndEditing:(UITextField*)textField { BOOL result = self.validationBlock(); self.errorLabel.hidden = result; if (self.delegate) { [self.delegate validationTextField:self didResignWithResult:result]; } } 

并在你的控制器

 -(void) validationTextField:(ValidationTextField*)textField didResignWithResult:(BOOL)result { if (!result) { int yOffset = textField.errorLabel.bounds.size.height; // Update here the frames of your other textfields, adding the yOffset to their frames } }