用户不应该在输入的字符串中的其他位置移动UITextField的光标。
我需要这个,因为我希望用户输入货币金额。这是通过让用户输入将被添加到金额末尾的数字来完成的,并且逗号将从末尾移动到第三个位置。
如何强制UITextField中的光标停留在输入字符串的末尾?
答案 0 :(得分:1)
我通过隐藏原始输入字段并显示标签中格式化的值来解决问题。这可以防止用户更改光标位置。
答案 1 :(得分:1)
使用
创建UITextField的子类-(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer { return NO; }
禁用该字段上的所有手势。这意味着您可以通过编程方式将该字段设置为firstResponder。
答案 2 :(得分:1)
在UIButton
上放置UITextField
。在按钮上添加IBAction
,然后拨打UITextField.becomeFirstResponder()
。
这可以防止点击通过,游标可以修改,但仍允许用户点击视图并选择它。
答案 3 :(得分:0)
我认为你可以使用:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
给他正确的范围。