iOS 7 中处理文本输入字段验证的适当方法是什么?是否有显示对话框的替代方法?
我对 iOS 应用程序没有太多经验(我更喜欢 android),我希望它类似于 android 的:
mEditText.setError("Error string");
我找到的最接近的是这个库,但我想知道 iOS 中是否有原生的东西(如果可能,我想避免使用第 3 方库)。
提前致谢。
iOS 7 中处理文本输入字段验证的适当方法是什么?是否有显示对话框的替代方法?
我对 iOS 应用程序没有太多经验(我更喜欢 android),我希望它类似于 android 的:
mEditText.setError("Error string");
我找到的最接近的是这个库,但我想知道 iOS 中是否有原生的东西(如果可能,我想避免使用第 3 方库)。
提前致谢。
我不知道像您提到的android示例这样简单的事情。但是,一旦您根据@Herre_84确定某个值无效,您就可以做一些不涉及弹出警报对话框的事情。
一个常见的做法是使用UITextField
的覆盖视图来指示该值有误。在UITextField
. 您可以在其中放置图像以指示输入的有效状态,如该问题的答案所示。更多详细信息在Apple 官方文档中。
您可以做的另一件不太常见的事情是使用attributedText
属性UITextField
来指示文本无效。例如,您可以将不正确的文本设置为不同的颜色。 TSValidatedTextField
演示如何做到这一点。
最后,您可以使用一个完全独立的视图(可能出现在您的附近UITextField
),并使用有效性信息进行更新。您可能必须通过共享的父视图控制器连接两个视图,以实现它们之间的通信。
没有标准或特定的“iOS7”验证文本的方式。UITextfield
但是,您可以通过使用自己的委托方法来实现自己的“验证框架”(类似于您在添加的链接中指向的那个)
- (void)textFieldDidEndEditing:(UITextField *)textField
,表示用户已完成编辑(例如,当他关闭键盘或按下“完成”按钮时)- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
,当在 UITextField 中输入新字符时触发。基于这些事件,您可以评估当前NSString
使用UITextField
它的text
属性,并相应地调整您的 UI。