iOS 7中处理文本输入字段验证的适当方式是什么? 有没有显示对话框的替代方法?
我对iOS应用程序没有多少经验(我更像是一个Android粉丝),我希望它类似于android的:
mEditText.setError("Error string");
我找到的最近的东西是library,但我想知道iOS中是否存在原生内容(如果可能,我希望避免使用第三方库)。
提前致谢。
答案 0 :(得分:8)
我不知道你提到的android例子那么简单。但是,根据@Herre_84确定某个值无效后,您可以执行一些不涉及启动警报对话框的操作。
常见的做法是使用UITextField
的叠加视图来指示该值是错误的。您可以在UITextField
的左侧和右侧使用叠加视图。您可以在其中放置指示输入有效状态的图像,如this question的答案所示。更多详情请见the official Apple documentation。
您可以做的另一个不常见的事情是使用attributedText
的{{1}}属性来指示文本无效。例如,您可以将不正确的文本设为不同的颜色。 TSValidatedTextField
演示了如何做到这一点。
最后,您可以使用一个完全独立的视图(可能出现在UITextField
附近),并使用有效性信息进行更新。您可能需要通过共享父视图控制器连接两个视图,以实现它们之间的通信。
答案 1 :(得分:2)
没有标准或特定的“iOS7”验证文字的方式。但是,您可以使用UITextfield
自己的委托方法(如
- (void)textFieldDidEndEditing:(UITextField *)textField
,表示用户已完成编辑(例如,当他解除键盘或按下“完成”按钮时)- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
,在UITextField中输入新字符时触发。根据这些事件,您可以使用NSString
属性评估UITextField
中的当前text
,并相应地调整您的用户界面。